Laravel get microtime from database

In the MySQL database, I have a datetime field, which is stored as follows:

2015-05-12 13:58:25.000508

But when I execute this request, for example:

  $query = SdkEvent::with('sdkEventStack'); if (isset($params['CO_ID']) && $params['CO_ID'] != "") { $query->where('CO_ID', $params['CO_ID']); } if (isset($params['APP_ID']) && $params['APP_ID'] != "") { $query->where('APP_ID', $params['APP_ID']); } if (isset($params['app_ip']) && $params['app_ip'] != "") { $query->where('SDKEVENT_IP', 'LIKE', $params['app_ip'].'%'); } if (isset($params['PLACE_ID']) && $params['PLACE_ID'] != "") { $query->where('PLACEMENT_ID', $params['PLACE_ID']); } $sdks = $query->get(); 

I get the datetime as follows: 2015-05-12 13:58:25 Why am I not getting microseconds?

+7
php mysql laravel microtime
source share
1 answer

This is not a problem with Laravel, it is a problem with the PDO that Laravel uses to create database queries.

For more information, see another question: PHP How to return datetime (6) from Mysql?

or actual bug report

http://grokbase.com/t/php/php-bugs/11524dvh68/php-bug-bug-54648-new-pdo-forces-format-of-datetime-fields

You can output microseconds using the DB::select() operator. For example:

 $test = DB::select("SELECT id, DATE_FORMAT(date, '%Y-%m-%d %H:%i:%f') as date FROM test"); 
+1
source share

All Articles