【问题标题】:How to convert created_at format to day_of_week?如何将 created_at 格式转换为 day_of_week?
【发布时间】:2015-02-18 16:00:06
【问题描述】:

我想将我的 created_at 日期转换为 day_of_week 格式,但我卡住了。

这是我到目前为止所做的:

$max_created_at = DB::table('inventories')->max('created_at'); 
// 2015-02-17 21:32:30

$day = DateHelper::getDay($max_created_at); 
// 17

使用我拥有的数据,我想将我的$day 转换为 day_of_week。

例如,因为今天是 2/18/2015 星期三,它应该返回 3。

【问题讨论】:

  • DateHelper 类是什么?这不是 Laravel 的一部分..
  • 这是我自己写的辅助函数。使用 getDay() 函数将只显示当天 (18) - 今天。
  • 只需询问底层数据库(如果可行)或使用 PHP 的 DateTime 类来解析日期,然后询问 DateTime 实例的星期几。见docs.php.net/datetime
  • PHP day of week的可能重复

标签: php laravel


【解决方案1】:

您不需要第二行来转换为$day。由于created_at 列是 Carbon 的一个实例,您可以这样做:

$max_created_at->format('N');

根据手册,其中N 是“ISO-8601 星期几的数字表示(在 PHP 5.1.0 中添加)”。

编辑:我的错 - 你的情况下可能没有 Carbon 的实例。但是你可以使用date('N', strtotime($max_created_at)),同样可以。

【讨论】:

    【解决方案2】:

    这样就可以了:

        echo date('N', strtotime($max_created_at));
    

    【讨论】:

      猜你喜欢
      • 2021-10-27
      • 2020-08-30
      • 1970-01-01
      • 2021-11-11
      • 2020-12-13
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      • 2012-03-31
      相关资源
      最近更新 更多