php是服务端代码,js是客户端代码。
所有的js都可以由php定义,了解这个就简单了。
如php中写:
$word = '你好'
echo "<script>var test = '".$word."'</script>"
如此,html页面就会获得一个js如下,
<script>var test = '你好'</script>
而这个js中的变量test就是php中$word这个参数的值。
JS的运行是在客户端,php的运行是在服务器端,这两者之间的通信必须要借助第三方介质,最最简便的方法就是,你可以在PHP代码中将$a的值赋给你网页上面一个隐藏的元素,然后JS再去取这个隐藏元素的值。当然也可以在PHP代码段中操作JS,echo "<script>var a = "+$a+"</script>"但是这样做并不能保证一定能完成你想要的结果。你好php是服务端脚本语言,js是浏览器端脚本语言,除非使用ajax进行数据提交否则,一但服务端生成好页面传到浏览器端后就不再参与浏览器端的“运算”,所以你想在同一个页面中不重新进行请求就js和php相互获取值是不现实的。另:
你的代码分析如下:
<script>
var linka
linka=window.location.href
</script>
<?php
$ch[0]="<script>document.write(linka)</script>"
echo $ch[0]."<br />"
<script>
到这步为止,php获得js的变量非常顺利
下面接着
<script>
var k
k="<?php echo $ch[0]?>"
alert(k)
</script>