用两个变量在PHP中构建一个变量名


Build a variable name in PHP out of two variables

根据当前页面,我想改变所选菜单模块的css,使其他不同,等等。所有这些都可以在加载前动态构建页面。

我的问题是我有一系列变量通过这个结构:

$css_(NAME_OF_MODULE)

要知道必须设置哪个变量,我在该函数的参数中接收了另一个变量,称为

$chosen_menu

假设$chosen_Menu = "C1",我想向$css_C1添加内容。因此,我想要的是创建一个变量名的2个变量,命名为$css_C1

I have try:

${$css_.$chosen_menu} = "value";

但它似乎不起作用。有线索吗?

这可能行不通。PHP支持完全的间接传递,所以像这样的代码可以工作。

$varName = $css."_".$chosen_menu;
$$varName = "value";

如果没有,它可能会试图将$css_解释为第二个代码示例中的变量名,因此只需将其更改为$css."_".$chosen_menu

$nr = 1;        
       ${'name' . $nr} = 20 ;        
       var_dump($name1);   

查看http://php.net/manual/en/language.variables.php

你应该能够使用:

$menu = $css . '_' .$chosen_menu;
$$menu = 'some value';

${$menu} = 'some value';

我不确定我是否理解对了,但是这样如何:

${$css."_".$chosen_menu} = "value";