PHP 变量在引用“$”时不起作用

PHP variable not working when referenced with '$'

提问人:northamerican 提问时间:7/26/2015 最后编辑:northamerican 更新时间:8/15/2015 访问量:1432

问:

我正在尝试使用使用变量变量的小助手函数将 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

php 变量

评论


答:

4赞 Scopey 7/26/2015 #1

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

to_js('$project_key');

它应该是:

to_js('project_key');

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

0赞 xYuri 7/26/2015 #2

尝试删除以下引号:

to_js('$project_key');


为了就好像你使用它一样,然后你把函数中的函数设置为文本:。to_js($project_key);to_js('$project_key');$variable'$project_key'

错误的答案!

@mehedi-PSTU2K9 答案是正确的

$$ 的参考


请参见:
https://stackoverflow.com/a/4169891/4977144

1赞 MH2K9 7/26/2015 #3

删除前面的第一个符号。如果使用 $$,则将被视为变量,但未将其定义为变量。$$variableproject 1

$project_key = 'project 1';

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

to_js($project_key);

$$ 的参考

评论

0赞 splash58 7/26/2015
让我们来定义一下。 无错误,无输出:)global $$variable;
0赞 Steven 7/26/2015 #4

尝试在变量周围使用脚本标记来呼应变量。

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

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