使用'$'引用PHP变量不起作用

时间:2015-07-26 04:26:59

标签: php variable-variables

我正在尝试使用使用variable variables的小辅助函数将PHP变量转换为JS变量。为简化起见,这就是我要完成的任务:

 $project_key = 'project 1';

 function to_js($variable) {
     echo $$variable;
 }

 to_js('$project_key');

这应该只是打印

project 1

而不是

Undefined variable: $project_key

告诉我变量已被定位但无法从函数中访问。如果只提供字符串$project_key,如何从函数中访问全局变量$project_key

4 个答案:

答案 0 :(得分:4)

忽略以下行中$project_key的前导$:

to_js('$project_key');

应该是:

to_js('project_key');

变量中的$不是变量名称的一部分,因此在变量变量中引用它时不需要包含它。

答案 1 :(得分:1)

$之前删除第一个$variable符号。如果您使用$$project 1将被视为变量,但未定义为变量。

$project_key = 'project 1';

function to_js($variable) {
    echo $variable;
}

to_js($project_key);

Reference of $$

答案 2 :(得分:0)

尝试删除以下内容中的引号:

  

to_js('$project_key');

要像to_js($project_key);一样to_js('$project_key');,您可以将函数中的$variable设置为文本:'$project_key'

错误答案!

@ mehedi-pstu2k9答案是正确的

  

Reference of $$


查看:
https://stackoverflow.com/a/4169891/4977144

答案 3 :(得分:0)

尝试使用脚本标签回显您的变量。

echo "<script>var x =" . $variable . "</script>";

$variable - 是你在php中存储的变量 x - 是您希望存储在Javascript中的变量。