在If语句中可以在Javascript中包含Php变量或URL吗?

时间:2010-02-21 21:19:39

标签: php javascript if-statement

我想做一些像这样的事情

我的PHP-file.php

  $lang = 'es';

我-JS-file.js

if ($lang == es)
   {
   something-magical-happens;
   }

或者像这样:

if (URL == www.mydomain.com/index.php?lang=es)
   {
   something-magical-happens;
   }

3 个答案:

答案 0 :(得分:4)

你可以在飞行中生成js

my.js.php:

<?php echo "//Yes." ?>
var i = "<?php echo $_GET['lang']; ?>";

function doSomethingWithI(){
  alert(i);
}

现在,尝试加入

<script type="text/javascript" src="my.js.php?lang=es"></script>
在你的HTML中

,你会看到:)

修改:点击此处查看:http://h.kissyour.net/so/phpjs/

编辑:在我的服务器上编辑的示例更接近我在此处写的内容。

编辑:哦,是的。 不要忘记清理代码!

答案 1 :(得分:0)

在这种特定情况下,为什么不简单地正确设置文档语言然后使用JavaScript来查看它?

<html lang="es">

在剧本中:

if (document.documentElement.getAttribute('lang') === 'es') { alert('Spanish'); }

答案 2 :(得分:0)

您可以 - 如接受的答案所示 - 使用PHP生成整个javascript文件。但是,如果您只是尝试访问一些有限的动态内容,这通常是矫枉过正的。如果您只是尝试访问需要PHP生成的一些变量,内联javascript工作正常。将其添加到HTML的头部:

<script type="text/javascript">
  <?php if( $condition == true ) : ?>
    var variable1 = <?php $var1 ?>,
        variable2 = <?php $var2 ?>;
  <?php else: ?>
    var variable1 = <?php $var1Alt ?>,
        variable2 = <?php $var2Alt ?>;
  <?php endif; ?>
</script>

只需确保在之前添加此,任何链接的脚本都依赖于这些变量。