代码之家  ›  专栏  ›  技术社区  ›  Naveed

PHP:如何使用Y-m-d获得一天?

  •  2
  • Naveed  · 技术社区  · 14 年前

    例如:

    date("l","2014-07-26"); // Output: Thursday
    

    但是输出应该是:星期六

    7 回复  |  直到 14 年前
        1
  •  15
  •   Gordon Haim Evgi    14 年前

    或与 DateTime 对象

    $dt = new DateTime('2014-07-26');
    echo $dt->format('l'); // Saturday
    

    或者使用程序别名

    echo date_format(date_create('2014-07-26'), 'l');
    
        2
  •  4
  •   Iain Collins Ryan    14 年前

    您可以使用mktime(),正如其他人所建议的,但是strotime()更灵活,更友好。

    date('l', strtotime('2014-07-26')); 
    
        3
  •  3
  •   Mike Sherov    14 年前

    date()将unix时间戳作为第二个参数,而不是日期的字符串表示形式。如果要这样做,应该首先使用strotime()将其转换为unixtimestamp

        4
  •  2
  •   oezi    14 年前

    strtotime :

    date("l",strtotime("2014-07-26"));
    
        5
  •  1
  •   Chris    14 年前

    为此,您可以执行以下操作:

    $t = "2014-07-26"; 
    $t = explode("-", $t); //not $t = array("2014", "07", "26"); 
    echo date("1", mktime(0,0,0,$t[1], $t[2], $t[0]); //using mktime with 
                                                      //hour, min, sec, month, day, year 
    
        6
  •  1
  •   Darragh Enright    14 年前

    第二个参数必须是时间戳。

        7
  •  0
  •   teemitzitrone    14 年前

    date("l", mktime(0, 0, 0, 7, 26, 2014));
    

    date mktime