【问题标题】:How to assign Php variable value to Javascript variable? [duplicate]如何将 Php 变量值分配给 Javascript 变量? [复制]
【发布时间】:2011-08-19 05:53:22
【问题描述】:

可能重复:
What's the best way to pass a PHP variable to Javascript?

我正在使用以下代码:

<script type="text/javascript">
<?php $ctnme = $_SERVER['REQUEST_URI'];
$cnme = explode("/",$ctnme);
echo $cname = $cnme[1];
?>
var spge = <?php echo $cname; ?> ;
alert(spge);
</script>

该值不会发出警报。什么错误?

【问题讨论】:

标签: php javascript html


【解决方案1】:

基本上:

<?php
//somewhere set a value
$var = "a value";
?>

<script>
// then echo it into the js/html stream
// and assign to a js variable
spge = '<?php echo $var ;?>';

// then
alert(spge);

</script>

【讨论】:

  • 如果 $var 包含单引号,回车,你可能会遇到问题...
  • 我同意,但是我的印象是,自从我第一次回复以来,这个问题似乎已经发生了很大变化,这使得这个回复现在看起来相当多余。 IIRC 这是一个关于如何传递 var 的整个原则的问题,现在它是一个数组。
  • 当我提醒它时,它显示为空,任何人都可以帮我找到解决方案,我也想知道我应该在哪里输入这些脚本,截至目前我在页面末尾有它跨度>
【解决方案2】:

最安全的方式(就特殊字符和数据类型处理而言)是使用json_encode()

var spge = <?php echo json_encode($cname); ?>;

【讨论】:

    【解决方案3】:

    尽可能使用 json_encode() (PHP 5.2+)。

    看到这个(可能是重复的?):Pass a PHP string to a JavaScript variable (and escape newlines)

    【讨论】:

      【解决方案4】:

      &lt;?php echo $cname; ?&gt; 周围加上引号以确保 Javascript 将其作为字符串接受,同时考虑转义。

      【讨论】:

        【解决方案5】:
        **var spge = '';** 
        alert(spge);
        

        【讨论】:

          猜你喜欢
          • 2014-03-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-26
          • 1970-01-01
          • 2013-05-23
          • 1970-01-01
          相关资源
          最近更新 更多