将DateTime连接到PHP中的字符串变量时出错

时间:2016-03-31 23:16:51

标签: php

我正在尝试创建一个包含当前服务器时间的字符串,但是在执行连接操作时出现错误。

以下工作正常:

$date = new DateTime('now', new DateTimezone('Africa/Johannesburg'));
echo $date->format('Y-m-d H:i:s');

$message = 'There is a new event occurred ';
echo $message;

但是当我尝试将消息和格式化日期连接在一起时,我收到HTTP 500错误。

$date = new DateTime('now', new DateTimezone('Africa/Johannesburg'));
echo $date->format('Y-m-d H:i:s');

$message = 'There is a new event occurred at '.date->format('Y-m-d H:i:s');  
echo $message;

我不理解什么?

1 个答案:

答案 0 :(得分:0)

正如你所知,第二个例子应该是:

$message = 'There is a new event occurred at '. $date->format('Y-m-d H:i:s');  

根据你的说法,你已经挣扎了两个小时,你可能只有一个空白的屏幕或“内部服务器错误”类型的页面,它没有给你任何细节。

调试这类问题:

1)查找Web服务器的错误日志(例如error_log)。你会在那里找到像这样的东西:

[Thu Mar 31 19:28:24 2016] [error] [client 10.42.88.12] PHP Parse error:
syntax error, unexpected T_OBJECT_OPERATOR in /var/www/htdocs/datetest.php on line 9

2)找到控制PHP安装的php.ini文件并设置值:

display_errors = On 

这将直接在您的网络浏览器中显示相同的“解析错误:”。您应该为生产服务器设置该设置,但在开发过程中它非常有用。