首页 > 代码库 > xml

xml

xml:extensible markup language(可扩展标记语言)

(一)xml与html的区别和联系

联系:它们都是标签语言

区别:

  ① 侧重点

    xml侧重数据的传输、数据的存储

    html侧重数据的表现

  ② 标签自我描述性

    xml可以根据自己的想法,自定义使用的标签

    html需要使用一些固定标签(table div span等等)

  ③ 标签和表现是否分离

    xml标签和表现是分离的

    html标签和表现是在一起的,例如h1  h2  h3  p 等标签在使用的时候会表现出一定的“样式”

(二)xml语法规范

  ① xml的标记头:<?xml  version=”1.0” encoding=”utf-8”  ?>

  ② xml文档有且只有一个根节点:<students>

  ③ 标签要闭合,有开始、结束标记

    a.双标记: <name></name>

    b.单标记: <img src=http://www.mamicode.com/”” />

  ④ 元素属性必有值,并且属性值要使用引号(‘  “)给括起来

<input type="checkbox"  checked />  html4.0
<input type="checkbox"  checked=‘checked‘ />  xhtml1.0
<input type="radio"  checked=‘checked‘ />  xhtml1.0
<select mutiple>  html4.0  		//多选下拉列表
<select mutiple=‘mutiple‘>  xhtml1.0  	//多选下拉列表

  ⑤ 元素名称大小写要求一致,建议使用小写字母

  ⑥ 标签可以嵌套,但不能交叉

  ⑦ 特殊符号使用符号实体(单引号:&apos;  双引号:&quot; 空格:&nbsp;&符号:&amp;

小于号: &lt;  大于号: &gt;)

  ⑧ 如果有的内容中有大量特殊符号,就不使用符号实体(比较麻烦),转而使用<![CDATA[  大量内容 ]]>

<?xml version="1.0" encoding="utf-8"?>
<students>
    <student>
        <name sex="man">特朗普</name>
        <color>white</color>
        <height>185</height>
    </student>
    <student>
        <name>奥巴马</name>
        <color>yellow</color>
        
    <height>185</height></student>
</students>
<?php
header("Content-type:text/html;charset=utf-8");
//利用simplexml创建xml文档
$str = "<?xml version=‘1.0‘ encoding=‘utf-8‘ ?><students></students>";
//创建xml文件,并追加内容
file_put_contents(‘01.xml‘,$str);

//具体xml内容添加
$sm = simplexml_load_file(‘01.xml‘); //引入xml文件
$st = $sm->addChild(‘student‘); //添加第一个student二层节点
$nm = $st->addChild(‘name‘,‘特朗普‘);
//给name设置属性
$nm ->addAttribute(‘sex‘,‘man‘);
$st ->addChild(‘color‘,‘white‘);
$st ->addChild(‘height‘,185);
$st = $sm->addChild(‘student‘); //添加第二个student二层节点
$nm = $st->addChild(‘name‘,‘希拉里‘);
//给name设置属性
$nm -> addAttribute(‘sex‘,‘women‘);
$st ->addChild(‘color‘,‘yellow‘);
$st ->addChild(‘height‘,165);

//保存xml到01.xml文件中
$sm -> asXML(‘01.xml‘);

//直接输出xml到浏览器
// echo $sm -> asXML();

 

xml