发布网友 发布时间:2022-04-06 01:52
共3个回答
懂视网 时间:2022-04-06 06:13
php数组转js数组对象的方法:首先获取【$arr】数组;然后使用函数【json_encode()】将数组每一个值进行json编码,;接着输出一个json的数组;最后使用arr接受数组。
相关学习推荐:js视频教程
php数组转js数组对象的方法:
先看php文件,当我们获取到$arr这个数组后
foreach ($arr as $value) { $json .= json_encode($value) . ','; } echo '[' . substr($json,0,strlen($json) - 1) . ']';
json_encode()
是将$arr的每一个值进行json编码,然后我们想输出一个json的数组,所以我们将每个编译后的值后面加一个逗号并且最后在所有值外面加上'[]',这是json数组的格式,注意因为我们在将每一个值进行json编码后都加上一个逗号在后面,这样就导致最后所有值合并数组时多一个逗号,所有我们得用substr()函数将其最后一个逗号去掉!
然后我们来看js文件
当我们用arr接受到php文件传输的json数组后
var json = JSON.parse(arr);
JSON是咱们开始下载那个文件中定义的一个对象,我们用它的parse方法将json数组转化成js的数组!这是变量json接受到的是一个js数组所以直接不能打印出来,你可以遍历这个json数组或者json[0]来输出!
其实,说白了咱们将php数组转化成js数组的思路就是利用json这个中间量来实现!当然你也可以只用php和js来实现数组的转化,方法不止一种!
想了解更多编程学习,敬请关注php培训栏目!
热心网友 时间:2022-04-06 03:21
我遇到过这个问题,后台是PHP读取数据库的数据,然后要到前端的JS去处理,这就涉及到php向JS传值的问题,这和js向php传值还不一样,我分别来说一下:
php向js传值
//现在php取出来的是一个数组
$test = array('1','2','3');
$testJson = json_encode(array);
这样,再使用js去获取就好了,代码为:
<script type="text/javascript">
var js_json = <?php echo testJson;?>
</script>
对于你而言,你把键值对转化为数组进行存储,然后进行传递,再按照这个方法在js中取值看行不行,js的那个插件我不是很清楚!
js向php传值
js向php传值要用到Ajax,这个稍微复杂点,你先去学一下Ajax(w3schoool中有讲)吧
追问var test = [[1, 2],[2, 1],[3, 2],[4, 1],[5, 2],[6, 1]];
热心网友 时间:2022-04-06 04:39
后端处理;