爲什麼一個函數,它是一個類裏面裏面,我不能做這樣的說法:PHP類函數內部全局變量
global $connected = true;
但我可以這樣做:
global $connected;
$connected = true;
爲什麼一個函數,它是一個類裏面裏面,我不能做這樣的說法:PHP類函數內部全局變量
global $connected = true;
但我可以這樣做:
global $connected;
$connected = true;
將$connected
納入範圍,並賦值給它,兩個分開東西。
在一個聲明中沒有理由使它們成爲可能,這並沒有多大意義。
請問下面的代碼:
function foo() {
global $x = 5;
}
$x = 5
爲範圍?5
納入範圍嗎?5
指定給全球$x
?5
指定給全球$x
,然後將$x
納入範圍?我當然知道你打算這是後者,前兩者沒有意義。但是,這個提議的陳述並不清楚。這將是糟糕的語法。
因爲裏面你首先必須宣佈一個全局變量的函數。這是你在函數開始時必須做的事情。這樣你可以激活一個沒有通過的特定變量。
雖然這是事實,但這只是說明了OP已經知道的事實。它並不試圖解釋爲什麼這些事實是如此。 –
簡單地說,「因爲」不是答案。 –
有什麼問題? – rabudde
我建議使用$ GLOBALS關聯數組,其中全局變量的名稱是鍵,該變量的內容是數組元素的值。 – Nickool
澄清沒有問題,我只是想知道爲什麼我不能在一個聲明中做到這一點。 – David