1:php变量传递给js变量,这个比较好实现
let js_var = <?php echo $php_var;?>
2:js变量传递给php变量, 这个会相对麻烦点
首先要知道php语言是经过后端服务器解析执行的, 而js语言的执行环境是需要在浏览器上运行.在后端php是没有办法执行的
只能返回给前端的浏览器去执行. 如果js变量想传递给php使用,那么有个办法就是利用ajax通讯从前端浏览器上传递给后端php
执行. php和js同一个页面具体例子如下(demo.php文件): 实际过程是
先执行else部分然后输出js脚本到浏览器上 --> 浏览器运行js, 3s后提交表单并跳转到本页面-> 后台接收到请求执行了if部
分, 最后输出结果
<?php
if (isset($_REQUEST['submit'])) {
echo var_export($_REQUEST, true); //echo出所有接收到的参数
} else {
echo <<<SCRIPT
//jq.js是jq文件,可以自己引入本地正确的jq文件路径或者引用线上的jq路径也可
<script src="./jq.js"></script>
<form action="">
<input type="text" name="param" value="helo">
<input type="text" name="data" value="world">
<input type="submit"/>
</form>
<script>
setTimeout(function() {
$("[type = 'submit']").click();
}, 3000);
function ajax() {
$.ajax({
'url': './demo.php',
'method': 'post',
'data': {a: 10, b: 20, data: 1231},
success: function (result) {
console.log(result);
},
error: function (result) {
console.log(result);
}
})
}
</script>
SCRIPT;
}
?>
博客介绍了PHP变量与JS变量相互传递的方法。PHP变量传递给JS变量较易实现,而JS变量传递给PHP变量相对麻烦,因PHP经后端服务器解析执行,JS在浏览器运行,可利用ajax通讯从前端传递给后端,还给出了同一页面的具体例子。

被折叠的 条评论
为什么被折叠?



