是否可以根據來自mysql數據庫的值在PHP中創建動態變量?從MySQL值創建變量變量
我的意思是,
說我有一個外地在MySQL State
當我讀使用數據庫row['State']
PHP中的值,如果我得到這樣Alabama
的值,我想有一個變量創建爲$Alabama_count
,我將初始化爲0
或1
。
謝謝。
是否可以根據來自mysql數據庫的值在PHP中創建動態變量?從MySQL值創建變量變量
我的意思是,
說我有一個外地在MySQL State
當我讀使用數據庫row['State']
PHP中的值,如果我得到這樣Alabama
的值,我想有一個變量創建爲$Alabama_count
,我將初始化爲0
或1
。
謝謝。
$varname = $row['State'] . '_count';
$$varname = 0; // or 1
確實存在一個更簡單的解決方案。您可以非常輕鬆地創建一個名爲$ Alabama_count的東西,而不是創建一個:$count['Alabama']
,即$count[$row['State']]
。
聽起來像你想要使用變量變量,像這樣?
$var_name = "{$row['State']}_count";
$$var_name = 1;
你可以做${$row['State']}
如果$row['State']
是Alabama
它一樣做$Alabama
。
同樣也可以做同樣的_count
:
${$row['State'] . '_count'} = 0; // $Alabama_count = 0;
${$row['State'] . '_count'}++; // $Alabama_count++; // $Alabama_count = 1;
您可以使用的使用$符號兩次變量,這個變量:例如:
$variable = 'Some_text';
$$name = 123;
echo $Some_text;
//this will output 123
感謝您的回覆。 – JPro 2010-01-21 16:01:36
不是真的知道這是什麼你可以看看Variable variables的PHP手冊
你可以創建一個名爲$ {$ row ['State'] .'_ count'}的變量並設置它的值。不過,我不知道這將是多麼明智。你不知道你會留下什麼變數。
我從來沒有想過一個好的地方使用變量變量,其中關聯數組不會更好。雖然你確實需要說:$ count [$ row ['State']] (missing $ on row) – Johrn 2010-01-21 15:54:08
@Johnr:是的,我同意。謝謝你的提示。我現在修好了。 – Aishwar 2010-01-21 15:58:09