<?php

use ebi\Q;
\test\db\DateTime::find_delete();
(new \test\db\DateTime())->ts('2015/07/21 12:13:14')->save();
(new \test\db\DateTime())->ts('2015/07/22 12:13:14')->save();
(new \test\db\DateTime())->ts('2015/07/23 13:13:14')->save();
(new \test\db\DateTime())->ts('2015/07/21 14:13:14')->save();
eq(['2015-07-21T00:00:00', '2015-07-22T00:00:00', '2015-07-23T00:00:00'], \test\db\DateTime::find_distinct('ts', Q::date_format('ts', 'Ymd')));
eq(['2000-01-01T12:00:00', '2000-01-01T13:00:00', '2000-01-01T14:00:00'], \test\db\DateTime::find_distinct('ts', Q::date_format('ts', 'H')));
Exemple #2
0
<?php

\test\db\DateTime::create_table();
\test\db\DateTime::find_delete();
$time = time();
$obj = new \test\db\DateTime();
$obj->ts(date('Y/m/d H:i:s', $time));
$obj->date(date('Y/m/d H:i:s', $time));
$obj->idate(date('Y/m/d H:i:s', $time));
$obj->save();
foreach (\test\db\DateTime::find() as $o) {
    eq(date('c', $time), $o->fm_ts());
    eq(date('Y-m-d', $time), $o->fm_date());
    eq(date('Ymd', $time), $o->idate());
}
$db = \ebi\Dao::connection(\test\db\DateTime::class);
$db->query('select ts,date,idate from date_time');
foreach ($db as $data) {
    $t = new \DateTime(date('Y/m/d H:i:s', $time));
    $t->setTimezone(new \DateTimeZone('UTC'));
    if (\ebi\Conf::appmode() == 'mamp') {
        eq(date('Y-m-d H:i:s', $time), $data['ts']);
        // mysqlの接続設定でtimezoneをJSTで取得している
    } else {
        eq($t->format('Y-m-d H:i:s'), $data['ts']);
    }
    eq(date('Y-m-d', $time), $data['date']);
    eq(date('Ymd', $time), $data['idate']);
}
Exemple #3
0
<?php

\test\db\DateTime::create_table();
\test\db\AddNowDateTime::find_delete();
$obj = new \test\db\AddNowDateTime();
eq(null, $obj->ts());
eq(null, $obj->date());
eq(null, $obj->idate());
$obj->save();
foreach (\test\db\AddNowDateTime::find() as $o) {
    neq(null, $o->ts());
    neq(null, $o->date());
    neq(null, $o->idate());
}