【问题标题】:Formatting reduced date in German用德语格式化缩减日期
【发布时间】:2012-04-10 15:38:33
【问题描述】:

我有一个定义为“今天 - 30 天”的 $start_date。尝试将其转换为德语表示法时,日期打印为 01.Januar 1970(而不是 10. March 2012)我理解这意味着 Unix 将结果解释为“0”,但我不知道我做错了什么。

$start_date = date("Y-m-d", strtotime("-30 days"));   
setlocale(LC_TIME, 'de_DE');
$start_date_DE = strftime('%d. %B %Y',$start_date);

【问题讨论】:

    标签: php date internationalization


    【解决方案1】:

    问题是strftime 需要一个时间戳作为第二个参数,但您正在向它传递一个字符串(格式为“Y-m-d”)。所以它返回了 UNIX 纪元 (1/1/1970)。

    试试这个:

    $start_date = strtotime("-30 days");   
    setlocale(LC_TIME, 'de_DE');
    $start_date_DE = strftime('%d. %B %Y',$start_date);
    

    http://codepad.org/pK9J07Wm

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-24
      • 1970-01-01
      • 1970-01-01
      • 2021-12-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多