我想知道那爲什麼我的靜態變量初始化不聲明如下工作:當初始化靜態內聯時,「PHP致命錯誤:常量表達式包含無效操作」?
function validate()
{
static $timezones = DateTimeZone::listIdentifiers(); // Error here
...
}
與static ...
行生成錯誤:如果我做了以下
PHP Fatal error: Constant expression contains invalid operations
,雖然,它按預期工作:
function validate()
{
static $timezones = null;
if(!isset($timezones))
{
$timezones = DateTimeZone::listIdentifiers();
}
...
}
所以我有一個解決問題的方法,但我想知道爲什麼它的fi第一種方法失敗?
請停止標記垃圾信息。你的帖子不可能同時是C++和PHP,這絕對不是你發佈的C++代碼。你不是新來的;你知道標籤是如何工作的。停止隨機添加它們。 –
爲什麼它在錯誤信息中解釋失敗。 – zerkms
@KenWhite啊...對不起,這是一個建議的標籤,因爲我也做了很多C++ ...感謝編輯。 –