2018-07-07 17:57:18  402831 0

XML和JSON语法以及PHP操作

 标签:   


网络之间以及接口请求传输数据的传输格式,有xml   json  yaml


什么是 XML?



XML 指可扩展标记语言(EXtensible Markup Language)。

XML 是一种很像HTML的标记语言。

XML 的设计宗旨是传输数据,而不是显示数据。

XML 标签没有被预定义。您需要自行定义标签。

XML 被设计为具有自我描述性。

XML 是 W3C 的推荐标准。


<?xml version="1.0" encoding="UTF-8"?>

<user>
	<name>liudehua</name>
	<age>33</age>
</user>


XMl与html


HTML   


中文名称:超文本标记语言

优点:简单

缺点:不可扩展

作用:显示



XML


eXtensible Markup language:可扩展的标记语言

解决HTML不可扩展的问题,

作用:保存或传输数据,不是用来显示数据的。



XMl声明


xml文档声明


<?xml version=”1.0” encoding=”utf-8” ?>


注意:声明必须放在第一行  


XMl树结构(DOM)


XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶"。


<?xml version=“1.0” encoding=“UTF-8”?>  //文档声明

<user>   //根元素
	<name>liudehua</name>  //子元素
	<age>33</age>  //子元素
</user>


XMl语法


注释 

<!-- 注释内容-->


标签的规则


XML 文档必须有根元素

至少需要一个元素

XML标签是区分大小写(HTML不区分大小写)

不允许空标记存在,所有的标记必须成对

标签的嵌套要正确

标签成对存在并且闭合


XML元素


<name id=“name”>liudehua </name>

name  标签名

id 属性

liudehua  文本内容


标签名命名规则:

名称可以包含字母、数字以及其他的字符


CDATA


CDATA(character data)字符数据,不会由解析器解析


像 “<” 和 “&” 字符在 XML 元素中都是非法的。相当于转义


<! [CDATA[ 内容 ]]  >


PHP操作xml

DOMDocument    类  

SimpleXML

Xpath


DOMDocument

PHP写入XML数据

$xml = new DOMDocument( “1.0”, “UTF-8” );  //实例化xml对象

$xml ->createElement ( string $name [, string $value ] )  //创建一个节点

第一个参数节点名  第二个参数节点值 可以不加  根节点

$xml -> formatOutput = true;   //属性 为true  格式化输出

$xml -> appendChild(节点名)  //添加节点

$xml -> save(文件名)  //保存到文件 xml


读取XML数据

$xml = new DOMDocument();

$xml ->load(文件名);  

$xml->loadXml($str); //$str xml的字符串

$username = $doc->getElementsByTagName('username');
$age = $doc->getElementsByTagName('age');

$age->item(0)->nodeValue

simpleXML

$user = simplexml_load_file(“users.xml”);//文件

echo $user->name

$user = simplexml_load_string($str);  //字符串

echo $user->name;

json


JSON:JavaScript 对象表示法(JavaScript Object Notation)。


JSON 是存储和交换文本信息的语法。类似 XML。


JSON 比 XML 更小、更快,更易解析。


json语法


1 数据在名称/值对中     key:value


  key 必须是字符串,并且要用双引号,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。


2 数据由逗号分隔          key1:value1,key2:value2

3 大括号保存对象          {key1:value1,key2:value2}


注意 字符串用双引号  最后一个不用 逗号


php处理json


$res =  json_decode($str);  json字符串  解码成对象 默认  加第二个参数为true时解码成数组


$res = json_encode($arr/$obj)  //数组或者对象转化成 json字符串


最后总结:实际开发中建议用JSON数据格式


此文章对应的视频教程以及正则实战地址:点我观看


0 条留言此文章没有人评论

给我留言

评论内容