日期不按 laravel 中的规定工作

Posted

技术标签:

【中文标题】日期不按 laravel 中的规定工作【英文标题】:Date not working as specified in laravel 【发布时间】:2017-03-07 12:49:54 【问题描述】:

我目前正在我的项目中做一个项目我想显示日期/月份/只有两位数的年份,但我不能这样做。日期在数据库中,其格式为 yyyy-mm-dd H-i-s 格式这是我的代码

    <p class="text-lg">Meeting request sent to
    <strong> (!empty($provider_detail->first_name)) ? $provider_detail->first_name : ''   (!empty($provider_detail->last_name)) ? $provider_detail->last_name : '' </strong></br>
    (!empty($booking->booking_date)) ?  date("y/m/d",$booking->booking_date) : '' 

显示错误。

ErrorException in 32beed24f6cd306408a9dd85ca2812a4630c92ec.php line 20:
A non well formed numeric value encountered (View: /home/devtqdyp/public_html/syncopp/resources/views/frontends/booking-successful.blade.php)

请帮我解决这个问题。 谢谢

【问题讨论】:

请显示错误。 $booking-&gt;booking_date 是否来自数据库?即它的yyyy-mm-dd 格式? 是的,它来自数据库。没有它的 dd-mm-yyyy 格式@RiggsFolly 更新了我的问题@Chris Cousins 不,先生。它给了我其他时间。我的时间是 16/10/25,但它给了我 69/12/31。 @RiggsFolly 【参考方案1】:

bookig_date 是数值还是字符串?

尝试改变

date("y/m/d",$booking->booking_date)

date("y/m/d", strtotime($booking->booking_date))

【讨论】:

我尝试了您的代码,但没有给出具体的结果。它返回 69/12/31,其中日期将是 16/10/25 @EkinOf。 booking_date 是字符串 我尝试了您的代码,但没有给出具体的结果。它返回 69/12/31,其中日期为 16/10/25 @RiggsFolly.. booking_date 是字符串【参考方案2】:

如果您的日期格式如您所说,即16/10/25yy/mm/dd,那么您的日期需要重新格式化为- 而不是/,以便strtotime() 正确地将其解释为这样的欧洲日期

date('y/m/d',strtotime(str_replace('/','-',$booking->booking_date)))

【讨论】:

不,先生。同样的问题发生@RiggsFolly 那么请告诉我们$booking-&gt;booking_date中的确切内容

以上是关于日期不按 laravel 中的规定工作的主要内容,如果未能解决你的问题,请参考以下文章

Laravel路线,其中where子句不按预期工作

php laravel框架学习笔记 基本工作原理

排序日期不按预期工作

Mongoose 聚合不按输入日期过滤

Mongoose 聚合不按输入日期过滤

我想自学laraver,请诸位前辈给一些建议,谢谢