5
我正在尋找類似extract()的相反內容。PHP - 作爲數組鍵的變量名稱
說我有幾個變量
$state = "FL";
$city = "Hollywood";
$zip = "33021";
我怎樣才能讓一個使用變量名作爲數組的數組中的鍵:
array("state"=>"FL", "city"=>"Hollywood", "zip"=>"33021");
我正在尋找類似extract()的相反內容。PHP - 作爲數組鍵的變量名稱
說我有幾個變量
$state = "FL";
$city = "Hollywood";
$zip = "33021";
我怎樣才能讓一個使用變量名作爲數組的數組中的鍵:
array("state"=>"FL", "city"=>"Hollywood", "zip"=>"33021");
你應該儘管使用compact()
功能。如:
$state = "FL";
$city = "Hollywood";
$zip = "33021";
$array = compact('state', 'city', 'zip');
編輯:似乎做正是你需要的,不知道爲什麼,你不認爲你需要它。如果你正在尋找正好與extract()
相反的東西,比如將所有可用的變量放到一個數組中,你不能那樣做,因爲PHP會在當前範圍內從字面上取所有變量,並將它們進入陣列。你必須以某種方式指定哪些變量。
我不確定你的正確與否,但是你確實意識到他在問題中明確表示它不是'compact()'對嗎? –
@Greg:是的,我忘了包含我的解釋... – animuson
compact()有一個缺點,因爲大多數IDE都不會意識到存在對這些變量的隱藏引用。 –