Mysql 如何检查日期是否大于今天';s date Laravel5

Mysql 如何检查日期是否大于今天';s date Laravel5,mysql,date,laravel-5,Mysql,Date,Laravel 5,我有一个表,其中有一列有事件日期 但该列的类型为varchar 日期以dd-mm-yy的形式保存 现在我想得到所有日期大于今天日期的事件 我的代码不起作用,如下所示 $cat=Event::where('date','>=',date('d-m-Y'))->get(); 但它不起作用它让我知道了所有的事情 任何帮助都将不胜感激 谢谢如果您的列类型是date,您可以使用Carbon: use \DateTimeZone; use Carbon\Carbon; use App\Blog

我有一个表,其中有一列有事件日期

但该列的类型为varchar

日期以dd-mm-yy的形式保存

现在我想得到所有日期大于今天日期的事件

我的代码不起作用,如下所示

$cat=Event::where('date','>=',date('d-m-Y'))->get();
但它不起作用它让我知道了所有的事情

任何帮助都将不胜感激


谢谢

如果您的列类型是date,您可以使用Carbon:

use \DateTimeZone;
use Carbon\Carbon;
use App\BlogVideo;

$today = Carbon::now(new DateTimeZone('Europe/Rome'));
Event::where('date','>=',$today)->get();

如果列是
varchar
类型,则除了将列数据类型更改为
date
datetime
之外,您什么也做不了。然后,做你以前做过的事情:

Event::where('date','>=', new \DateTime('now'))->get();

使用正确的日期类型,而不是varchar。我想应该对你有帮助。@CBroe我知道兄弟我正在更新别人设计的网站,只是用这个值检查它不起作用:)('01-01-2015'>'01-02-2014')它返回false;我在生产环境中使用它,它可以工作。我不知道该说什么:)你确定你的约会对象是瓦查尔吗?毫无疑问,不管“01-01-2015”不大于“01-02-2014”的编程语言是什么,Ops,你是对的,我忘记了varchar列类型:)修复答案。