with wheredate updateorcreate collection appends laravel laravel-5 eloquent laravel-5.1 unix-timestamp

wheredate - Laravel Get created_at en Millisecond Timestamp



wheredate laravel (3)

En Laravel 5.1, estoy tratando de obtener la fecha de created_at en milisegundos timestamp para usar en frontend javascript. ¿Cómo puedo hacer eso? Mi consulta en este momento es algo como esto:

$stats = User::where(''created_at'', ''>='', $range) ->groupBy(''date'') ->orderBy(''date'', ''DESC'') ->get([ DB::raw(''Date(created_at) as date''), DB::raw(''COUNT(*) as value'') ]) ->toJSON();

Quiero que la salida de created_at sea ​​así: 1325356200000


@Neel ya que está usando Laravel, ya tiene una gran herramienta llamada Carbon para trabajar con PHP DateTime Class. No es necesario usar UNIX_TIMESTAMP para su propósito y esta no es una buena idea.

Como puede ver en la documentación de Laravel, created_at y updated_at son instancias predeterminadas de Carbon. Para que pueda obtener una marca de tiempo como esta y también mucho más

User::findOrFail($id)->created_at->timestamp

Si lo consigues

"created_at" => "2015-10-07 06:10:49"

El resultado producirá una marca de tiempo usando la consulta anterior como esta 1444198249

Después de eso puedes manipular tu resultado como lo desees.


Puede crear un created_at acceso personalizado para el campo created_at y convertir el datetime a una marca de tiempo.


Si está bien con el uso de DB::raw , puede probar algo como DB::raw("CONCAT(UNIX_TIMESTAMP(DATE(created_at)), ''000000'') as date") .