繁体   English   中英

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

[英]PHP variable not working when referenced with '$'

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

在以下行中从$project_key省略前导$:

to_js('$project_key');

它应该是:

to_js('project_key');

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

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

$project_key = 'project 1';

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

to_js($project_key);

参考$$

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

to_js('$project_key');


成为to_js($project_key); 就像您将其用作to_js('$project_key'); 然后将函数中的$variable设置为文本: '$project_key'

错误的答案!

@ mehedi-pstu2k9答案是正确的

参考$$


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

尝试在变量周围加上脚本标签。

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

$variable是您已存储在php中的变量x-是您要存储在Javascript中的变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM