首页 php教程 php手册 php生成xml实例与基础知识

php生成xml实例与基础知识

May 25, 2016 pm 04:42 PM
php生成xml

下面给大家普及一篇关于php生成xml实例与基础知识文章,这个操作很简单我们介绍了xml是什么及xml特点,希望例子对各位有帮助.

1、XML,Extensible Markup Language(可扩展标记语言),是一种可以创建自定义标记符号(Tags)的标记语言,是用于表示结构化信息的一种标准文本格式,作为下一代数据交换格式的标准,和HTML一样,XML基于标准通用标记语言(Standard Generalized Markup Language,SGML),文档结构,层次非常清晰,xml文档只是存储了数据,是很有规律的结构化文档,但没有定义如何显示这些数据,文档结构可称为"文档树",主干是顶层的父元素,分支和叶是子元素.

xml声明,表示文档遵循的是xml的1.0版的规范.

2、xml特点:

可扩展性,xml允许使用者创建和使用他们自己的标记而不是HTML的有限标签,企业可以用XML为电子商务和供应链集成等应用定义自己的标记语言,甚至特定行业一起来定义该领域的特殊标记语言,作为该领域信息共享与数据交换的基础,不过,这些自定义标记仅仅是用来识别信息数据的,它本身并不传达信息.

灵活性,xml更像一个小型的数据库,提供了一种结构化的数据表示方式,使得用户界面分离于结构化数据.

自描述性,xml表示数据的方式真正做到了独立于应用系统,并且数据能够重用,xml文档被看作文档的数据库化和数据的文档化.

3、xml与html区别

html是一个定型的标记语言,它用固有的标记来描述,显示网页内容,xml没有固定的标记,不能描述网页具体的外观、内容,它只是描述内容的数据形式和结构,网页将数据和显示混在一起,而xml则将数据和显示分开.

xml文档注意事项

所有标记都必须有一个相应的结束标记、标记都必须合理嵌套、标记区分大小写、标记的属性必须用""括起来.

标记命名规则:名字中可以包含字母、数字、下划线以及其他字母,不能以数字或下划线开头、名字不能以xml(或XML或Xml…)开头、名字中不能包含空格、名字中也不能使用".","."被用来连接元素和属性.

提示:支持汉字作为标记名,要注意编码,文件编码与xml声明的编码要一致.

在 XML 中,有 5 个预定义的实体引用:

&lt; < 小于 
&gt;> 大于 
&amp; & 和号 
&apos; &#39; 单引号 
&quot; " 双引号
登录后复制

XML文件生成操作简单示例,代码如下:

<?php 
header("Content-Type:application/xml;charset=utf-8"); 
header("Cache-Control: no-cache,must-revalidate"); 
header("Expries: Fri, 14 Mar 1980 20:00:00 GMT"); 
header("Last-Modified: ".date(&#39;r&#39;)); 
header("Prama: no-cache"); 
$xml=&#39;<?xml version="1.0" encoding="utf-8" 
<rss></rss>&#39;; 
$sxe=new SimpleXMLElement($xml); 
if(method_exists($sxe,&#39;addChild&#39;)){ 
    $sxe->addAttribute(&#39;version&#39;,&#39;2.0&#39;); 
    $channel=$sxe->addChild(&#39;channel&#39;); 
    $channel->addChild("title","服饰批发"); 
    for($i=0;$i<5;$i++){ 
        $item=$channel->addChild(&#39;item&#39;); 
        $item->addChild(&#39;title&#39;,&#39;商品&#39;.$i); 
        $item->addChild(&#39;link&#39;,$i); 
    } 
    echo $sxe->asXML(); 
}else{ 
    $dom=new DOMDocument("1.0");//生成一个新的DOM对象 
    $rss=$dom->createElement("rss");//生成rss元素 
    $rss->setAttribute("version","2.0"); 
    $rss=$dom->appendChild($rss); 
 
    $channel=$dom->createElement("channel"); 
    $channel=$rss->appendChild($channel); 
 
    $title=$dom->createElement(&#39;title&#39;); 
    $text=$dom->createTextNode("服饰批发"); 
    $title->appendChild($text); 
    $title=$channel->appendChild($title); 
 
    for($i=0;$i<5;$i++){ 
        $item=$dom->createElement("item"); 
        $item=$channel->appendChild($item); 
 
        $title=$dom->createElement("title"); 
        $text=$dom->createTextNode("商品".$i); 
        $title->appendChild($text); 
        $title=$item->appendChild($title); 
 
        $link=$dom->createElement("link"); 
        $text=$dom->createTextNode("$i"); 
        $link->appendChild($text); 
        $link=$item->appendChild($link); 
    }
    echo $dom->saveXML(); 
    //$dom->save("nnn.xml"); 
}
登录后复制


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)