Php 为什么不能显示DateTime对象

Php 为什么不能显示DateTime对象,php,Php,运行上述代码时,页面将不显示任何内容。只是想知道代码有什么问题,我使用了PHP5版本5.3.0 有人能帮我吗?提前谢谢 -更新-- 添加引号后,仍不显示任何内容 new DateTime2011-10-05等于new DateTime1996,因此没有意义。您可能是指new DateTime'2011-10-05'new DateTime2011-10-05等于new DateTime1996,因此没有任何意义。您可能是指new DateTime'2011-10-05'在创建对象时在日期周围使用

运行上述代码时,页面将不显示任何内容。只是想知道代码有什么问题,我使用了PHP5版本5.3.0

有人能帮我吗?提前谢谢

-更新-- 添加引号后,仍不显示任何内容


new DateTime2011-10-05等于new DateTime1996,因此没有意义。您可能是指new DateTime'2011-10-05'

new DateTime2011-10-05等于new DateTime1996,因此没有任何意义。您可能是指new DateTime'2011-10-05'

在创建对象时在日期周围使用引号:

$date = new DateTime("2011-10-05");
    echo $date->format('Y-m-d H:i:s');

在创建对象的日期周围使用引号:

$date = new DateTime("2011-10-05");
    echo $date->format('Y-m-d H:i:s');

好的,您的代码运行良好,但是您没有在引号中添加日期,因此PHP将其视为公式

$date = new DateTime("2011-10-05");

这就是1996年。你应该给它一个字符串

好吧,您的代码运行良好,但没有将日期加引号,因此PHP将其视为公式

$date = new DateTime("2011-10-05");

这就是1996年。你应该给它一个字符串

您忘记将要传递给DateTime构造函数的参数设置为字符串。这就解决了这个问题:

2011 - 10 - 05

您忘记将要传递给DateTime构造函数的参数设置为字符串。这就解决了这个问题:

2011 - 10 - 05

引号不是我对“显示无任何问题”的修复,也不是Win7 Enterprise上的PHP5.3.10,64位@gnud的建议指出了我的问题:

致命错误:未捕获的异常“exception”带有消息 'DateTime::_构造:依赖 系统的时区设置。您必须使用 date.timezone设置或日期\默认\时区\设置 功能

新代码:

$date = new DateTime('2011-10-05');
给出了预期的结果:

$timezone = new DateTimeZone('America/Chicago');
$dateNow = new DateTime('now', $timezone);
echo $dateNow->format('Y-m-d H:i:s');

引号不是我对“显示无任何问题”的修复,也不是Win7 Enterprise上的PHP5.3.10,64位@gnud的建议指出了我的问题:

致命错误:未捕获的异常“exception”带有消息 'DateTime::_构造:依赖 系统的时区设置。您必须使用 date.timezone设置或日期\默认\时区\设置 功能

新代码:

$date = new DateTime('2011-10-05');
给出了预期的结果:

$timezone = new DateTimeZone('America/Chicago');
$dateNow = new DateTime('now', $timezone);
echo $dateNow->format('Y-m-d H:i:s');
php.ini中是否打开了显示错误?您使用的是输出缓冲吗?php.ini中的display_errors打开了吗?您正在使用输出缓冲吗?