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

yipeiwu_com6年前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操作memcache缓存的基础方法示例

前言 最近在工作中又遇到了memcache,大家应该都有所了解,memcache 是一个高效的分布式的内存对象缓存系统,他可以支持把php的各种数据(数组,对象,基本数据类型)放在它管理...

PHP设计模式之原型设计模式原理与用法分析

本文实例讲述了PHP设计模式之原型设计模式原理与用法。分享给大家供大家参考,具体如下: 一、什么是原型设计模式 原型设计模式使用一种克隆技术来复制实例化的对象,新对象是通过复制原型实例创...

PHP静态成员变量

静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非...

php解决和避免form表单重复提交的几种方法

前言 为什么要避免form表单被重复提交呢?因为我们不想让我们的服务器重复处理没必要的数据,同时我们也是避免我们的数据库产生重复的数据,避免表单重复提交也是让我们的网站更安全的一种表现。...

PHP针对伪静态的注入总结【附asp与Python相关代码】

本文实例讲述了PHP针对伪静态的注入。分享给大家供大家参考,具体如下: 一:中转注入法 1.通过http://www.xxx.com/news.php?id=1做了伪静态之后就成...