php array 转json及java 转换 json数据格式操作示例

 更新时间:2019年11月13日 09:09:23   作者:倾听岁月  
这篇文章主要介绍了php array 转json及java 转换 json数据格式操作,结合实例形式分析了PHP针对array数组转json以及Java操作Map、List、对象与json格式转换的相关实现技巧,需要的朋友可以参考下

本文实例讲述了php array 转json及java 转换 json数据格式操作。分享给大家供大家参考,具体如下:

php array 转json 数据

$arr = array(
  "demo1" => "my demo1",
  "demo2" => array(
    "demo2_demo1"=>"aaaaaaaa",
    "demo2_demo2"=>"bbbbbbbb", 
    "demo2_demo3"=>array(
      "demo2_demo3_demo1"=>"ccccccc"
    )
  ),
  "demo3" => 22
);
$json_str = json_encode($arr,true);
$arr = json_decode($json_str,true);
var_dump($json_str);
var_dump($arr);
//查看结果

运行结果:

string(137) "{"demo1":"my demo1","demo2":{"demo2_demo1":"aaaaaaaa","demo2_demo2":"bbbbbbbb","demo2_demo3":{"demo2_demo3_demo1":"ccccccc"}},"demo3":22}"
array(3) {
  ["demo1"]=>
  string(8) "my demo1"
  ["demo2"]=>
  array(3) {
    ["demo2_demo1"]=>
    string(8) "aaaaaaaa"
    ["demo2_demo2"]=>
    string(8) "bbbbbbbb"
    ["demo2_demo3"]=>
    array(1) {
      ["demo2_demo3_demo1"]=>
      string(7) "ccccccc"
    }
  }
  ["demo3"]=>
  int(22)
}

java json数据格式转换依赖包

commons-beanutils-1.8.3.jar,
commons-collections-3.2.1.jar,
commons-lang-2.6.jar,
commons-logging-1.1.1.jar,
ezmorph-1.0.6.jar,
json-lib-2.4-jdk15.jar,

添加至构建路径。

package Main;
import net.sf.json.JSONObject;
import net.sf.json.JSONArray;
import java.util.Map;
import java.util.HashMap;
import java.util.List;
import java.util.ArrayList;
import Main.Demo1;
public class Index 
{
  public static void main(String[] args)
  {
    index4();
  }
  /**
   * 简单的simple
   * */
  public static void index1()
  {
    JSONObject json = new JSONObject();
    json.element("name","谭勇");
    json.element("age",22);
    System.out.println(json.toString());
  }
  /**
   * Map 数据转json
   * */
  public static void index2()
  {
    JSONObject json = new JSONObject();
    Map<String,String> map = new HashMap<String,String>();
    map.put("name", "谭勇");
    map.put("age", "22");
    json.accumulateAll(map);
    System.out.println(json.toString());
  }
  /**
   * List<Map> 转json
   * */
  public static void index3()
  {
    JSONArray arr = new JSONArray();
    List<Map<String,String>> list = new ArrayList<Map<String,String>>();
    list.add(getMap("name","谭勇"));
    list.add(getMap("age","22"));
    arr.addAll(list);
    System.out.println(arr.toString());
  }
  /**
   * 对象转Json
   * */
  public static void index4()
  {
    Demo1 demo1 = new Demo1();
    demo1.setName("谭勇");
    demo1.setAge(22);
    JSONObject json = new JSONObject();
    JSONArray arr = new JSONArray();
    json.element("demo1",demo1);
    arr.add(demo1);
    //json.containsKey(demo1);
    System.out.println(json.toString());
    System.out.println(arr.toString());
  }
  private static Map<String,String> getMap(String key,String val)
  {
    Map<String,String> map = new HashMap<String,String>();
    map.put(key, val);
    return map;
  }
}

Demo1.java

package Main;
public class Demo1 
{
  private String name;
  private int age;
  public void setName(String name)
  {
    this.name = name;
  }
  public String getName()
  {
    return this.name;
  }
  public void setAge(int age)
  {
    this.age = age;
  }
  public int getAge()
  {
    return this.age;
  }
}

更多关于 JSONObject 提供的方法 JSONArray 提供的方法 自己探索。

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《PHP数学运算技巧总结》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • 帝国cms目录结构分享

    帝国cms目录结构分享

    本文给大家分享的是一款非常不错的也很实用的php的内容发布系统--帝国CMS的目录结构,方便大家进行二次开发。
    2015-07-07
  • jQuery获取json后使用zy_tmpl生成下拉菜单

    jQuery获取json后使用zy_tmpl生成下拉菜单

    这篇文章主要介绍了我开发过程中使用jQuery获取json后使用zy_tmpl生成下拉菜单的实例,虽然是第一次写关于AppCan开发的内容,有需要的小伙伴可以参考下。
    2015-03-03
  • 关于Zend Studio 配色方案插件的介绍

    关于Zend Studio 配色方案插件的介绍

    本篇文章是对Zend Studio 配色方案插件的使用进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP面向对象程序设计之多态性的应用示例

    PHP面向对象程序设计之多态性的应用示例

    这篇文章主要介绍了PHP面向对象程序设计之多态性的应用,结合具体实例形式分析了php面向对象程序设计中关于多态性的概念、原理、相关使用技巧及注意事项,需要的朋友可以参考下
    2018-12-12
  • php中文乱码问题的终极解决方案汇总

    php中文乱码问题的终极解决方案汇总

    乱码是我们在开发可能经常遇见,也是最让人头疼的一个问题了,下面这篇文章主要介绍了在php开发中,可能遇见中文乱码问题的终极解决方案,文中介绍好几个情况下的解决方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-08-08
  • 完美解决phpexcel导出到xls文件出现乱码的问题

    完美解决phpexcel导出到xls文件出现乱码的问题

    下面小编就为大家带来一篇完美解决phpexcel导出到xls文件出现乱码的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • php自定义类fsocket模拟post或get请求的方法

    php自定义类fsocket模拟post或get请求的方法

    这篇文章主要介绍了php自定义类fsocket模拟post或get请求的方法,涉及php使用socket模拟post及get请求的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • thinkphp框架实现删除和批量删除

    thinkphp框架实现删除和批量删除

    这篇文章主要为大家详细介绍了thinkPHP框架实现删除和批量删除的相关资料,需要的朋友可以参考下
    2016-06-06
  • php一维二维数组键排序方法实例总结

    php一维二维数组键排序方法实例总结

    这篇文章主要介绍了php一维二维数组键排序方法,以实例形式总结了针对一维数组的冒泡排序与使用array_multisort()对二位数组按照指定键值排序等方法,具有不错的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • php xml 入门学习资料

    php xml 入门学习资料

    今天做项目时遇到一个问题:需要动态更新主页上的图片,以示本站不是做完了就算了,是有人一直在维护。好了,需求有了,如何实现?!
    2011-01-01

最新评论