2012-09-24 59 views
0

有没有一种方法可以将原始文本更改为回显中的变量名称。例如设置$numbernumber1一个变量,然后当它回用$number1?将rawtext更改为变量名称?

为了澄清,说我们有一个名为它$number = "number1";变量,当我们呼应$number,它回声一个名为number1变量,我会怎样将number1更改为变量?像 “回声 ”$ $编号“;?

+0

你能否澄清? – Chris

+0

不好意思? ...? – faq

回答

0

很容易。”“:

$number = 'number1'; 
$$number = ''; 
var_dump(get_defined_vars()); 

echo $number1; 
+0

所以如果我回应$号码,它会在你的代码中回显$ number1? – user1478935

+0

如果您回显它,它会回显$$数字定义的空字符串。 $$数字取值为$ number,并将其用作变量名称。 – trickyzter

0

你可以用两块钱,而不是一个做到这一点需要注意的是这一点。真的是不好的做法,很可能有一个更好的方式在这里实现自己的目标。

$number = 42 
$usenumber = 'number' 
echo $$usenumber //echos 42 
+0

正是我在找的:)谢谢 – user1478935

+0

和我一样... – trickyzter

+0

@trickyzter:不一样。你的不太清楚。为什么我关心'get_defined_vars()'?或'echo $ number1;'? – Eric

1

你可以尝试以下

$number = 2012 ; 
$name = 'number' ; 
echo $$name ; //2012 
echo ${$name}; //2012 
echo ${"number"} ; //2012 
echo "${$name}"; //2012