php - Laravel 雄辩的日期格式
问题描述
必须在我发疯之前发表这篇文章,因为我在网上找到的解决方案都没有奏效。
我的 Laravel 应用程序没有返回正确的数据,因为 Laravel 在运行查询时似乎在“坚持”使用“m/d/Y”作为日期格式。我的代码如下...
$now = date("d/m/Y H:i:s");
$previousTime = (new DateTime($now))->modify('-1 minutes')->format('d/m/Y H:i:s');
$count = PlayLog::where('user_id', 1)->whereDate('created_at', '>=', $previousTime)->get()->count();
数据以 d/m/Y 的形式存储在数据库中,但 Laravel 正在查询 m/d/Y。我怎样才能解决这个问题?
更新我现在很生气,但答案是 whereDate() 不支持时间:/
解决方案
You can take leverage of Carbon
Import use Carbon\Carbon;
Date formatting via carbon to match your DB
$previousDT = Carbon::now()->addDay(-2)->format('d/m/Y H:i:s'); // 10/05/2020 23:05:06
PlayLog::whereDate('created_at', '>=', $previousDT)
推荐阅读
- python-3.x - 访问自定义架构文件并将架构强加到 pyspark 数据框时出错
- python - Python - 每 10 分钟暂停整个脚本
- r - 改变不同人口数中的y轴数
- python - 如何输入另一个应用程序?
- r - 如何使用readxl读取被空格包围的矩形
- javascript - 组件最初没有被初始化 vuejs
- vb.net - 在 SaveFileDialog 之后打开资源管理器并重定向到特定路径
- python - 尝试使用 pytube 时 Tkinter 回调中的异常
- postgresql - 如何在 postgresql 中显示 6 的幂
- java - 方法进入第二次返回,导致错误输出