我有一个名为$repeater的变量,它可以是低,中等或高。
我也有变量叫做。。
$low_protein_feed
$moderate_protein_feed
$high_protein_feed
我想根据$repeater的值调用其中一个变量。
我已经到了这一步...
echo "${$repeater}_protein_feed";
...例如,它输出moderate_protein_feed。但当我希望它回显$moderate_protein_feed变量的值时,它会回显为文本。
我觉得我离得不远了谢谢你的意见
4条答案
按热度按时间olhwl3o21#
让我考虑另一种方法,大多数开发人员都认为它比使用可变变量更好:
bhmjp9jg2#
虽然我反对这种编程的建议,有时它是方便的,能够有变量变量名.也就是说,一个变量名,可以设置和动态使用.一个正常的变量是设置一个语句,如:你会想要使用$$来设置变量为变量名。http://php.net/manual/en/language.variables.variable.php
测试场景:
与
对于您的案例:
返回test1
查看相关安全文章http://rgaucher.info/php-variable-variables-oh-my.html
sz81bmfz3#
我认为你正在寻找这样的事情:
输出:
但是,你真的应该使用这样的东西:
更先进的设计,你可以使用对象和声明一个类型的对象,并使用一个标准类型的项目。
在这里进一步阅读动态变量名以及PHP5/7之间的差异:
Using braces with dynamic variable names in PHP
http://www.dummies.com/programming/php/how-to-use-php-variable-variables/
6qfn3psc4#
另一种方式:$GLOBALS[$side . $zi_char]