在Laravel 5.1中,我试图以毫秒时间戳获取created_at
日期以用于前端javascript。我怎样才能做到这一点?我此刻的询问是这样的:
$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();
我希望created_at
的输出如下:1325356200000
答案 0 :(得分:2)
如果你使用DB::raw
就可以了,你可以试试DB::raw("CONCAT(UNIX_TIMESTAMP(DATE(created_at)), '000000') as date")
。
答案 1 :(得分:2)
您可以为created_at
字段创建自定义accessor,并将日期时间转换为时间戳。
答案 2 :(得分:1)
@Neel当你使用Laravel时,你已经拥有一个名为Carbon的强大工具来处理PHP DateTime类。没有必要为您的目的使用public boolean save1(int type) {
byte[] buffer = null;
InputStream fIn = getBaseContext().getResources().openRawResource(
R.raw.song);
int size = 0;
try {
size = fIn.available();
buffer = new byte[size];
fIn.read(buffer);
fIn.close();
} catch (IOException e) {
return false;
}
String path = Environment.getExternalStorageDirectory().getPath()
+ "/media/audio/";
String filename = "New song";
FileOutputStream save;
try {
save = new FileOutputStream(path + filename);
save.write(buffer);
save.flush();
save.close();
} catch (FileNotFoundException e) {
return false;
} catch (IOException e) {
return false;
}
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,
Uri.parse("file://" + path + filename)));
File k = new File(path, filename);
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, filename);
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/ogg");
if (RingtoneManager.TYPE_RINGTONE == type) {
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
} else if (RingtoneManager.TYPE_NOTIFICATION == type) {
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
} else if (RingtoneManager.TYPE_ALARM == type) {
values.put(MediaStore.Audio.Media.IS_ALARM, true);
}
Uri uri = MediaStore.Audio.Media.getContentUriForPath(k
.getAbsolutePath());
Uri newUri = MainActivity.this.getContentResolver().insert(uri, values);
RingtoneManager.setActualDefaultRingtoneUri(MainActivity.this, type,
newUri);
this.getContentResolver()
.insert(MediaStore.Audio.Media.getContentUriForPath(k
.getAbsolutePath()), values);
return true;
}
,这不是一个好主意。
您可以在Laravel documentation中找到UNIX_TIMESTAMP
和created_at
默认为Carbon实例。所以你可以得到这样的时间戳,还有much more
updated_at
如果你得到
User::findOrFail($id)->created_at->timestamp
结果将使用上面的查询生成时间戳,如"created_at" => "2015-10-07 06:10:49"
之后,您可以按照自己的意愿操纵结果。