PHP与javascript实现变量交互的示例代码

yipeiwu_com5年前PHP代码库
本例是PHP和javascript交互的例子,php中的值赋给js变量中,前提是这个php变量必须有值才行,就算是假分支中。

比如php中的$flags在本例中为true,如果js中false语句写成:$title_1.innerHTML = "<?php echo $title;?>";就会出错,因为$title在php中被赋值为数组

尽管在php的flags=="false";$title是一个字符串,情况是$title是数组,而数组在字符串中也是不能直接显示的。
复制代码 代码如下:

<?php
$string = "天上and地下";
$flags = "";
if(strpbrk($string,"and")!=false){
 $title = explode("and",$string);
 $title_1 = $title[0];
 $title_2 = $title[1];
 $flags = "true";
}
else{
 $title = $string;
 $flags = "false";
}
?>

—>html
复制代码 代码如下:

<html>
<head>
 <meta http-equiv=Content-Type content="text/html;charset=utf-8">
 <title></title>
 <script type="text/javascript">
  var display = function(){
   var flags = "<?php echo $flags; ?>";
   var $title_1 = document.getElementById("title_1");
   var $title_2 = document.getElementById("title_2");
   if(flags=="true"){
    $title_1.innerHTML = "<?php echo $title[0];?>";
    $title_2.innerHTML = "<?php echo $title[1];?>";
    return;
   }
   if(flags=="false"){
    $title_1.innerHTML = "<?php echo $string;?>";
    //虽然这是一个假分支,照理这个$string可以替换成$title,但是虽然只是执行上边的真分支,但是编译的时候
    //这个假分支也是必须编译的,所以echo $title是错误的,因为$title是数组,只能是$string;
   }
  }
 </script>
</head>
<body onload="display()">
 <div id="title_1"></div>
 <div id="title_2"></div>
</body>
</html>

相关文章

浅析php中三个等号(===)和两个等号(==)的区别

先举个列子:比如你一个函数会返回这几种情况:1、大于0的数2、小于0的数3、等于0的数(也就是0啦)4、False(失败时)这时候如果你想捕获失败的情况,你就必须用===,而不能用==因...

php 过滤器实现代码

在以前,一个用户通过网络主要是获取信息。而如今的网络刚更注重与用户的交互,用户不再仅仅是网站的浏览者,也是网站内容的制造者。由以前单纯的“读”向“写”以及“共同创作”发展,由被动接收信息...

PHP中file_exists()判断中文文件名无效的解决方法

本文实例讲述了PHP中file_exists()判断中文文件名无效的解决方法。分享给大家供大家参考。具体方法如下: php中判断文件是否存在我们会使用file_exists函数或is_f...

浅谈thinkphp的实例化模型

thinkphp实例化模型给我们提供了三种方法 第一种 比较平常使用 就是$user=new Model(‘user'); //也等于 $user=M(‘user') 第二种就是我们如果...

PHP实现二维数组根据key进行排序的方法

本文实例讲述了PHP实现二维数组根据key进行排序的方法。分享给大家供大家参考,具体如下: 在PHP中内置了很多对数组进行处理的函数,有很多时候我们直接使用其内置函数就能达到我们的需求,...