PHP日期格式无法正常工作

时间:2013-10-06 00:54:58

标签: php wordpress

我在wordpress中使用高级自定义字段来输入特定游览的开始和结束日期。那个日期是mmddyy(10052013)。

我正在尝试使用PHP格式化日期。代码如下:

<?php 
            $date = get_field('start_date');

            $y = substr($date, 4, 4); $m = substr($date, 0, 2); $d = substr($date, 2, 2);

            // create UNIX
            $time = strtotime("{$d}-{$m}-{$y}");

            // format date (November 11th 1988)
            echo date('F n, Y', $time); 
        ?>
        <?php
            if(get_field('end_date')){
                $date = get_field('end_date');

                $y = substr($date, 4, 4); $m = substr($date, 0, 2); $d = substr($date, 2, 2);

                // create UNIX
                $time = strtotime("{$d}-{$m}-{$y}");

                // format date (November 11th 1988)
                echo ' - ' . date('F n, Y', $time); 
                }
            ?>

但是当日期在页面上呈现时,出于某种原因,日期总是“2013年10月10日”,我不知道为什么。你可以在这里看到它:http://onedirectionconnection.com/tester/?projects=take-me-home-tour

我输出正常保存的数据库值,以表明它们肯定是正确保存的。我编写PHP的方式出了问题。

有人可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

尝试:

echo ' - ' . date('F d, Y', $time);

您正确地创建了日期,但Fn都指的是月份。

参考:http://www.php.net/manual/en/datetime.createfromformat.php

在此处查看:https://eval.in/52927

答案 1 :(得分:1)

n是数字月

j是没有前导零的日期数字,以及您要查找的内容

echo ' - ' . date('F j, Y', $time); 

答案 2 :(得分:0)

这个链接可能包含您在WP中格式化日期和时间所需的一切

http://codex.wordpress.org/Formatting_Date_and_Time