動態地命名變量
回答
是的,它是可能的:
$field = "randomName";
$$field = "test";
$$$field = "test 2";
echo $randomName . "\n"; //outputs: "test"
echo $test. "\n"; //outputs: "test 2"
檢查this出
你想要變量嗎?
見http://php.net/manual/en/language.variables.variable.php
例
$varname = 'var';
$$varname = 'content';
print $var; // outputs 'content'
您可以指定變量作爲變量名。
$$field
這將做它聽起來像你所要求的。
$field = "randomName" ;
${$field} = "yeah" ;
${"randomName"} = "that works too" ;
這是可能的(見"variable variables"),但這種做法應勸阻,它往往是更好地使用數據結構(即array with keys)對於這種動態操作的。
爲什麼要不要氣餒?我無法實現我需要使用數組。 – sark9012 2013-04-08 17:00:39
我真的很想看看使用數組無法實現的功能嗎? – bwoebi 2013-04-08 17:01:19
@Luke因爲它通常是*錯誤的方法。有多少種語言具有「變量變量」或直接等價的? *很少*。然而,使用Maps(即PHP/array,Java/HashMap,Perl/hash,Python/Dictionary)解決完全相同的問題並沒有問題。當然,試圖解決的真正問題可能是......特別的:確保在帖子中包含適用的上下文。 – user2258571 2013-04-08 17:02:20
PHP的語言功能叫做variable variables。在你的情況下:
$field = 'randomName';
$$field = "Hello world!";
echo $randomName; // prints out "Hello world!"
- 1. qt/C++動態地命名變量
- 2. 動態命名變量R
- 3. JavaScript動態變量命名
- 4. AS3動態變量命名
- 5. Python - 動態命名變量
- 6. 動態命名變量?
- 7. jQuery動態命名變量
- 8. PHP動態命名和訪問變量
- 9. jquery session - 動態變量命名
- 10. 在vb.net中動態命名變量
- 11. 動態變量命名和參考(ColdFusion)
- 12. 在javascript中動態命名變量
- 13. 樹的動態變量命名[Python]
- 14. 在循環中動態地命名PHP變量
- 15. 如何在sas中動態地重命名變量?
- 16. Makefile'for'變量作爲動態變量名
- 17. 動態地從變量CSHTML
- 18. SQL:動態變量名
- 19. 動態變量名稱Coldfusion
- 20. 動態變量名稱EL
- 21. 動態變量名 - Actionscript 3
- 22. 動態名稱變量
- 23. 通過動態變量名
- 24. 動態變量名稱
- 25. 動態構造變量名
- 26. 生成變量名動態
- 27. 動態Freemarker變量名
- 28. 動態變量名的Java
- 29. 創建變量名動態
- 30. 動態變量名稱
+1對於使用大括號:) – 2013-04-08 17:29:48