zoukankan      html  css  js  c++  java
  • php 和 js之间使用json通信

      有时候我们需要用后台从数据库中得到的数据在js中进行处理,但是当从php中获取到数据的时候,使用的是键值对形式的多维关联数组。而我们知道,js只支持索引数组,不支持关联数组,这个时候从后台传递过来的数据,在js中是无法直接进行处理的。比如我们在后台index.php中从数据库中获取用户信息的数据,在php中的形式是:

    [["name"=>"jyy","age"=>"26"],["name"=>"ccc","age"=>"44"];

    当我们使用ajax将这个多维数组通过echo传递到js后,我们在控制台输出后,显示的是Array。使用typeof一看,是个string。也就是说,我们获取到的是“Array"这个字符串,并没有直接得到数据,想想也知道,这样是不可能得到的。

      另外,我们知道js操作类似php中的关联数组是使用对象或是json的形式。因此我们在传给js的时候就需要先将php中的数据转换成json形式,这样js中就能够操作这些数据了

    那么在php中是使用json_ecode()方法实现的。比如:数据对象为$data,那么传递给js的代码就是:

    echo json_ecode($data);

      这个时候,我们在js中使用控制台输出这个数据,得到的是:

    [{"name":"jyy","age":"26"},{"name":"ccc","age":"44"}]

    通过typeof检查,得到的依然是String。依然需要进一步处理,将其转换成js的json格式,这个时候我们使用的是js中的JSON_parse():将字符串转换成json对象。

      至此问题解决。

      

  • 相关阅读:
    Java闭包和回调
    Java通过字节分割字符串
    编译型语言和解释型语言的简单介绍
    对JavaScript事件处理程序/事件监听器的设定的简单介绍
    Linux netstat命令详解
    CentOS 7下iptables配置添加修改规则端口方法(转)
    设计模式
    设计模式
    Mysql8.0主从配置
    设计模式
  • 原文地址:https://www.cnblogs.com/jyybeam/p/6985547.html
Copyright © 2011-2022 走看看