在PHP变量中使用JS

时间:2013-12-04 19:50:07

标签: javascript php echo window.location

function move(){
  var move= <?php echo $config['root'];?>
    window.location.href=""+move+"sf/" ;
}

我有config.php并且在其中定义了所有根变量,我想将用户点击移动到该URL,

  1. 问题是我无法从config.php
  2. 访问该变量
  3. 创建index.js文件也不错。
  4. 当代码在Prod,QA和Dev之间移动时,每个环境的URL都会发生变化,我希望我只在一个点上进行更改,而不必在所有代码中进行更改。上面的代码也无效。

2 个答案:

答案 0 :(得分:2)

您尝试在PHP中访问哪些JS变量?在我看来,你正试图在你的JS中使用PHP,而不是相反。

我认为您只需要在PHP输出周围加上引号:

var move = "<?php echo $config['root']; ?>";

然后你可以这样做:

window.location.href = move;

答案 1 :(得分:0)

1-问题是我无法从config.php访问该变量 好吧,这段代码应该有效var move= <?php echo '"'.$config['root'].'"';?>

请注意,URL是一个字符串。你不能写点东西 var string = some text

相反,您应该在字符串的开头和结尾添加引号。 var string = "some text"

我只是不知道您对""+move+"sf/" ;

中前两个引号的含义

你是否隐藏了域名?如果是这样,我建议你也在config.php中添加这部分URL。

3-我希望我只改变一点,不必在所有代码中进行更改。

但关键是config.php,对吗?您只需更改config.php中的变量,并确保所有其他.PHP文件都包含它。

查看名为 auto_prepend_file 的php.ini选项,自动将PHP代码添加到所有PHP脚本中。

http://www.php.net/manual/en/ini.core.php#ini.auto-prepend-file

你必须提供一个本地路径(/ usr / local / ...或c:/ server / ...)