我被困在這一點上,不知道還有什麼要嘗試。這行代碼在本地正常工作,但在服務器上失敗。沒有錯誤消息。我只是得到一個空白頁面。PHP的DateTime-.add函數在本地工作,但不在服務器上
$tempDate->add(new DateInterval('P1M'));
任何想法,爲什麼我會看到這種行爲?
我被困在這一點上,不知道還有什麼要嘗試。這行代碼在本地正常工作,但在服務器上失敗。沒有錯誤消息。我只是得到一個空白頁面。PHP的DateTime-.add函數在本地工作,但不在服務器上
$tempDate->add(new DateInterval('P1M'));
任何想法,爲什麼我會看到這種行爲?
空白頁最有可能意味着致命的錯誤。有機會,你沒有啓用錯誤報告,所以你什麼都看不到。就像猜測一樣,服務器上的PHP版本與本地版本不同。
當我升級到PHP 5.3時,我已經注意到與使用date()
函數有關的所有地方,因爲我沒有設置默認時區,請嘗試設置一個。
http://php.net/manual/en/function.date-default-timezone-set.php
它可能不相關,但它是值得一試。例如:
date_default_timezone_set('America/New_York');
您可以參考list of supported timezones找到適合您的一個。
至於錯誤,你可以添加以下到您的腳本或引導文件的開頭:
ini_set('display_errors', 1);
error_reporting(E_ALL);
在錯誤報告把向我表明它不承認調用add方法。這導致我檢查PHP版本號,它在服務器上是5.2。 – IMZvonko 2011-12-26 20:38:44
看起來像[ÁlvaroG. Vicario的答案](http://stackoverflow.com/a/8626252/398242)就是解決方案。 – 2011-12-26 20:53:05