我有一个基本的php问题,我无法解决,我也想了解为什么!
$upperValueCB = 10;
$passNodeMatrixSource = 'CB';
$topValue= '$upperValue'.$passNodeMatrixSource;
echo $topValue;
OUTPUT $ upperValueCB
但我希望OUTPUT作为变量的值10。
如何让PHP读取$ dollar-phrase作为变量而不是字符串?
答案 0 :(得分:4)
$varName = 'upperValue' . $passNodeMatrixSource;
$topValue = $$varName;
答案 1 :(得分:4)
这个小例子可能会说明你将要做的事情:
<?php
$a = 'b';
$b = 10;
echo ${$a}; // will output 10
所以你必须将你的例子改为:
$upperValueCB = 10;
$passNodeMatrixSource = 'CB';
$topValue= 'upperValue'.$passNodeMatrixSource;
echo ${$topValue}; // will output 10
答案 2 :(得分:2)
你可以这样做:
$upperValueCB = 10;
$passNodeMatrixSource = 'CB';
$topValue= ${'upperValue'.$passNodeMatrixSource};
echo $topValue;
因为upperValueCB
是var名称,如果您希望PHP了解要使用的var,则必须提供var名称。
为此,您可以使用$upperValueCB
之类的静态方式
或使用这样的字符串:${'upperValueCB'}
或使用包含var名称$var = 'upperValueCB'; $$var;
答案 3 :(得分:0)
$upperValueCB = 10;
$passNodeMatrixSource = 'CB';
$topValue= 'upperValue'.$passNodeMatrixSource;
echo ${$topValue};