我们如何将PHP变量注入Javascript

时间:2012-07-06 07:31:24

标签: php javascript html

我在JavaScript中使用“windows.location”命令时遇到问题。我想在链接windows.location中添加php变量。我能怎么做? 例如:我想通过变量$ lang

将用户转移到英文页面或越南页面

这是我的代码

echo'window.location =“/ B2C / $ lang / confirm_fone.html”';

,地址栏中的结果是:

http://10.160.64.4:1234/B2C/$lang/confirm_fone.html

地址栏中的$ lang无法解码?

6 个答案:

答案 0 :(得分:7)

单引号字符串中的变量不会在PHP中进行插值。

请改用:

echo 'window.location="/B2C/' . $lang . '/confirm_fone.html"';

或使用双引号:

echo "window.location='/B2C/$lang/confirm_fone.html'";

答案 1 :(得分:2)

这是因为整个字符串都是单引号。

您需要使用双引号进行插值。

否则,您可以尝试:

echo 'window.location="/B2C/'.$lang.'/confirm_fone.html"';

答案 2 :(得分:0)

如果你把php变量放在字符串中,你应该使用Double Quotes。

echo "window.location='/B2C/$lang/confirm_fone.html'";

答案 3 :(得分:0)

您必须连接该值,如下所示:

echo 'window.location="/B2C/'.$lang.'/confirm_fone.html"';

答案 4 :(得分:0)

当您使用'作为分隔符时,PHP中的字符串不能解析变量。使用"代替('代替javascript命令)或使用.连接字符串。

答案 5 :(得分:0)

如果你在php-context中:

echo "window.location=\"/B2C/"{$lang}"/confirm_fone.html\";';

如果您处于HTML-Context(或更好的“外部-php-context”):

window.location="/B2C/<?php echo $lang ?>/confirm_fone.html";