【问题标题】:Giving wrong day of week in PHP在 PHP 中给出错误的星期几
【发布时间】:2017-12-10 02:04:14
【问题描述】:

它显示星期四但星期三的输出,请帮我修复它......

我的代码

<?php
    date_default_timezone_set('Asia/Kolkata');
    $date = '2017/06/07';
    $weekday = date('l', strtotime($date)); 
    echo $weekday; //
?>

提前致谢

【问题讨论】:

  • 使用这个$date = '2017/07/06'; yyyy-mm-dd 格式
  • $date = '2017-06-07';尝试但不工作@Dave
  • 使用日期为 2017-07-06。 (Y-m-d) 格式
  • 在我的系统、writephponline 和 eval.in 上运行良好。Y/m/d 和 Y-m-d 两种方式都运行良好
  • @vinod 检查这个 :: eval.in/828529

标签: php date dayofweek


【解决方案1】:

您需要使用日期格式“Y-m-d”来获得您想要的结果。 $date = '2017/06/07' 表示 2017 年 6 月 7 日。

如果您想获得 2017 年 7 月 6 日这一天,请更改

$date = '2017/06/07';

$date = '2017/07/06';

【讨论】:

    【解决方案2】:

    试试这个:

    date_default_timezone_set('Asia/Kolkata');
    $date = '2017/06/07';
    $date = str_replace('/','-', $date);
    $weekday = date('l', strtotime($date)); 
    echo $weekday;
    // Output: Wednesday
    

    Phpfiddle link

    Check the document here

    注意:m/d/y 或 d-m-y 格式的日期可以通过查找来消除歧义 在各个组件之间的分隔符处:如果分隔符是 斜线 (/),则假定为美式 m/d/y;而如果 分隔符是破折号 (-) 或点 (.),然后是欧洲 d-m-y 格式 假设。但是,如果年份以两位数格式给出,并且 分隔符是一个破折号(-,日期字符串被解析为 y-m-d。 避免潜在的歧义,最好使用 ISO 8601 (YYYY-MM-DD) 日期或 DateTime::createFromFormat() 尽可能。

    【讨论】:

      猜你喜欢
      • 2014-11-15
      • 1970-01-01
      • 1970-01-01
      • 2016-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-29
      相关资源
      最近更新 更多