XML和JSON

作者: XZ阳光小熊 | 来源:发表于2016-06-11 20:45 被阅读33次

XML

XML(eXtensible Markup Language)是一种可扩展的标记语言。

标记语言(markup Language)是指在普通文本中加入一些具有特定含义的标签(Tag),以对文本的内容进行标识和说明的一种文件标识方法。

一、XML编写规范

XML类似于html的双标签的写法,它必须有根标签,必须是双标签而且必须是封闭,标签名全部都可以自定义。示例代码如下:

<students>
    <student id="1">
        <name>3D哥</name>
        <age>18</age>
        <wife>***</wife>
    </student>
    <student id="1">
        <name>3D哥</name>
        <age>18</age>
        <wife>***</wife>
    </student>
    <student id="1">
        <name>3D哥</name>
        <age>18</age>
        <wife>***</wife>
    </student>
</studnets>

上面就是一段用于表示3个学生的信息的XML代码,我们将数据写成XML的文本代码,通过解析之后将数据传递到前端,实现前后台数据交互。由于传递相同数据时XML占用的空间更大,所以此处我们只做了解,至于如何解析,我们这里便不做描述。

JSON

一、JSON简介

JSON(javaScript Object Notation)是一种轻量型的数据格式。JSON构建有两种结构:

1、“名称/值”对的集合。不同的语言中,它被理解为对象,记录,结构,字典,哈希表,有键列表,或者关联数组,实例:

    $json = '{"name" : "xiaoming","age" : "18","gender" : "man"}';
    echo $json;
代码执行效果

2、值的有序列表。在大部分语言中,它被理解为数组。

二、PHP接收和传递JSON

1、json_decode($json, assoc ) — 对JSON格式的字符串进行编码。

$json : 待解码的json,必须是string格式的字符串。
assoc : 当参数为true返回数组,false返回对象,默认为false。

    $json = '{"name" : "xiaoming","age" : "18","gender" : "man"}';
    var_dump(json_decode($json)); // 返回对象
    echo "<hr/>";
    var_dump(json_decode($json,true));  // 返回数组
代码执行效果
2、json_encode() — 对变量进行JSON编码

注意: 此函数只能接受UTF-8编码的数据。
返回值: 编码成功则返回一个以json形式表示的string或者在失败时返回false。

    $json = array("name"=>"xiaoming", "age"=>"18", "gender"=>"man");
    print_r($json);

    echo "<hr/>";
    // 将数组转换成字符串格式的json对象
    echo json_encode($json);
代码执行效果

当我们把数据库中的数据取出来之后,经过PHP在后台进行JSON编码之后,通过echo输出在前端用ajax接收数据,即可实现前后台数据交互。

<?php

    // 连接数据库
    $db = mysql_connect("localhost", "root", "");

    // 选择数据库
    mysql_select_db("girlDB");

    // 设置编码方式
    mysql_query("SET NAMES UTF8");

    // 查询数据库
    $sql = "SELECT * FROM girl";
    $res = mysql_query($sql);

    // 创建数组
    $array = array();
    // 取出数据库中的数据
    while ($row = mysql_fetch_assoc($res)) {
        $array[] = $row; //等同于array_push()
    };

    // 对数组进行字符串编码
    echo json_encode($array);

    // 关闭数据库
    mysql_close($db);

 ?>

PHP代码执行效果

以上内容纯属个人理解,由于本人水平有限,若有错漏之处敬请指出斧正,小弟不胜感激。

相关文章

  • 数据格式

    XML和JSON数据格式 json数据格式 {"":"", "":"", "":""} json xml对比 1....

  • 菜鸟笔记(五) - 常见传输格式解析

    本文将介绍使用Java解析json和生成json,解析xml以及生成xml的一些方法。 前提摘要:JSON和XML...

  • XML JSON

    XML和JSON的优缺点对比 (1).可读性方面。 JSON和XML的数据可读性基本相同,JSON和XML的可读性...

  • JSON和XML之间有哪些不同

    JSON和XML之间的区别是什么?下面本篇文章就来给大家比较一下JSON和XML,介绍JSON和XML之间的区别,...

  • iOS面试无果,是因为这些题

    每日瑜伽面试题(电话面试) 1. json 和 xml 哪个好,为什么? XML和JSON优缺点 (1).XML...

  • JSON 和 XML

    XML扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有...

  • XML和JSON

    XML XML:可扩展标记语言。由标准通用标记语言(SGML)中简化修改出的。用于传送及携带数据信息,与说明数据是...

  • JSON和XML

    定义 JSON定义 JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有...

  • JSON和XML

    简介 JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格...

  • JSON和XML

    JSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件...

网友评论

    本文标题:XML和JSON

    本文链接:https://www.haomeiwen.com/subject/dfjsdttx.html