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")
.