- 浏览: 87898 次
- 性别:
- 来自: 龙城
最新评论
-
Fis:
阿呆jinsss 写道 楼主说的简单易懂,最适合我这些理解能力 ...
[原创]AS3.0的自定义事件 -
阿呆jinsss:
楼主说的简单易懂,最适合我这些理解能力差点的人,谢谢了~
[原创]AS3.0的自定义事件 -
Fis:
mengxiaolongcz 写道外层循环 i<arr. ...
去除数组中相同的元素 -
Fis:
mengxiaolongcz 写道外层循环 i<arr. ...
去除数组中相同的元素 -
mengxiaolongcz:
外层循环 i<arr.length-1
里层循环 var ...
去除数组中相同的元素
原文:http://www.oschina.net/code/snippet_110138_4727
【直接生成字符串】
方法1:使用纯粹的PHP代码生成字符串,并把这个字符串写入一个以XML为后缀的文件。这是最原始的生成XML的方法,不过有效!
PHP代码如下:
【DomDocument】
方法2:使用DomDocument生成XML文件
创建节点使用createElement方法,
创建文本内容使用createTextNode方法,
添加子节点使用appendChild方法,
创建属性使用createAttribute方法
PHP代码如下:
【XMLWriter】
方法3:使用XMLWriter类创建XML文件
此方法在PHP 5.1.2后有效
另外,它可以输出多种编码的XML,但是输入只能是utf-8
PHP代码如下:
【SimpleXML】
方法4:使用SimpleXML创建XML文档
<?xml version="1.0" encoding="utf-8"?> <article> <item> <title size="1">title1</title> <content>content1</content> <pubdate>2009-10-11</pubdate> </item> <item> <title size="1">title2</title> <content>content2</content> <pubdate>2009-11-11</pubdate> </item> </article>
【直接生成字符串】
方法1:使用纯粹的PHP代码生成字符串,并把这个字符串写入一个以XML为后缀的文件。这是最原始的生成XML的方法,不过有效!
PHP代码如下:
<?PHP $data_array = array( array( 'title' => 'title1', 'content' => 'content1', 'pubdate' => '2009-10-11', ), array( 'title' => 'title2', 'content' => 'content2', 'pubdate' => '2009-11-11', ) ); $title_size = 1; $xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; $xml .= "<article>\n"; foreach ($data_array as $data) { $xml .= create_item($data['title'], $title_size, $data['content'], $data['pubdate']); } $xml .= "</article>\n"; echo $xml; // 创建XML单项 function create_item($title_data, $title_size, $content_data, $pubdate_data) { $item = "<item>\n"; $item .= "<title size=\"" . $title_size . "\">" . $title_data . "</title>\n"; $item .= "<content>" . $content_data . "</content>\n"; $item .= " <pubdate>" . $pubdate_data . "</pubdate>\n"; $item .= "</item>\n"; return $item; } ?>
【DomDocument】
方法2:使用DomDocument生成XML文件
创建节点使用createElement方法,
创建文本内容使用createTextNode方法,
添加子节点使用appendChild方法,
创建属性使用createAttribute方法
PHP代码如下:
<?PHP $data_array = array( array( 'title' => 'title1', 'content' => 'content1', 'pubdate' => '2009-10-11', ), array( 'title' => 'title2', 'content' => 'content2', 'pubdate' => '2009-11-11', ) ); // 属性数组 $attribute_array = array( 'title' => array( 'size' => 1 ) ); // 创建一个XML文档并设置XML版本和编码。。 $dom=new DomDocument('1.0', 'utf-8'); // 创建根节点 $article = $dom->createElement('article'); $dom->appendchild($article); foreach ($data_array as $data) { $item = $dom->createElement('item'); $article->appendchild($item); create_item($dom, $item, $data, $attribute_array); } echo $dom->saveXML(); function create_item($dom, $item, $data, $attribute) { if (is_array($data)) { foreach ($data as $key => $val) { // 创建元素 $$key = $dom->createElement($key); $item->appendchild($$key); // 创建元素值 $text = $dom->createTextNode($val); $$key->appendchild($text); if (isset($attribute[$key])) { // 如果此字段存在相关属性需要设置 foreach ($attribute[$key] as $akey => $row) { // 创建属性节点 $$akey = $dom->createAttribute($akey); $$key->appendchild($$akey); // 创建属性值节点 $aval = $dom->createTextNode($row); $$akey->appendChild($aval); } } // end if } } // end if } // end function ?>
【XMLWriter】
方法3:使用XMLWriter类创建XML文件
此方法在PHP 5.1.2后有效
另外,它可以输出多种编码的XML,但是输入只能是utf-8
PHP代码如下:
<?PHP $data_array = array( array( 'title' => 'title1', 'content' => 'content1', 'pubdate' => '2009-10-11', ), array( 'title' => 'title2', 'content' => 'content2', 'pubdate' => '2009-11-11', ) ); // 属性数组 $attribute_array = array( 'title' => array( 'size' => 1 ) ); $xml = new XMLWriter(); $xml->openUri("php://output"); // 输出方式,也可以设置为某个xml文件地址,直接输出成文件 $xml->setIndentString(' '); $xml->setIndent(true); $xml->startDocument('1.0', 'utf-8'); // 开始创建文件 // 根结点 $xml->startElement('article'); foreach ($data_array as $data) { $xml->startElement('item'); if (is_array($data)) { foreach ($data as $key => $row) { $xml->startElement($key); if (isset($attribute_array[$key]) && is_array($attribute_array[$key])) { foreach ($attribute_array[$key] as $akey => $aval) { // 设置属性值 $xml->writeAttribute($akey, $aval); } } $xml->text($row); // 设置内容 $xml->endElement(); // $key } } $xml->endElement(); // item } $xml->endElement(); // article $xml->endDocument(); $xml->flush(); ?>
【SimpleXML】
方法4:使用SimpleXML创建XML文档
<?PHP $data_array = array( array( 'title' => 'title1', 'content' => 'content1', 'pubdate' => '2009-10-11', ), array( 'title' => 'title2', 'content' => 'content2', 'pubdate' => '2009-11-11', ) ); // 属性数组 $attribute_array = array( 'title' => array( 'size' => 1 ) ); $string = <<<XML <?xml version='1.0' encoding='utf-8'?> <article> </article> XML; $xml = simplexml_load_string($string); foreach ($data_array as $data) { $item = $xml->addChild('item'); if (is_array($data)) { foreach ($data as $key => $row) { $node = $item->addChild($key, $row); if (isset($attribute_array[$key]) && is_array($attribute_array[$key])) { foreach ($attribute_array[$key] as $akey => $aval) { // 设置属性值 $node->addAttribute($akey, $aval); } } } } } echo $xml->asXML(); ?>
发表评论
-
我的开发成长日记(1)
2020-02-05 18:11 02018年是个特别的年 ... -
VR开发中用到的技术总结
2017-12-11 14:32 0使用Unity3D开发VR应用有2年了,刚刚接触都朋友和同 ... -
LayaBox flash 转换项目心得
2015-08-28 13:50 4442一、熟悉从as3项目转到js的API和特性差异 1、Simpl ... -
Starling中AssetManager加载文件的流程整理
2015-06-16 20:15 1367Starling做移动开发,会用到大量的纹理和图片素材、X ... -
LayaBox flash 转换项目心得
2015-08-28 13:46 0一、熟悉从as3项目转到j ... -
air遍历目录里的文件
2015-02-12 15:52 947air开发移动应用时,用于遍历一个目录里的所有文件: var ... -
MovieClip 帧里面子对象为null 问题的解决
2014-10-11 17:19 829原因是进入其中一帧后,MovieClip对象不会立刻被创建出来 ... -
as3打包手机引用
2013-10-18 17:48 7811、新建手机项目 去掉其他平台选项 创建项目。 ... -
as3 ANE的打包小结
2013-10-18 15:15 2698工作关系要用到as3手游ANE的打包,之前因为用不到,也没 ... -
金武传
2012-12-08 19:28 0丐帮: 萧峰,远,擒龙功,降魔掌,打狗棒法,降龙十八掌* 洪七 ... -
SWFLoader不响应Event.COMPLETE事件
2012-06-25 16:16 1220工作中遇到了一个问题,flex控件SWFLoader解决了 ... -
AS3 位运算
2012-04-17 13:04 919原文转至http://www.tangpei.net/2011 ... -
支持参数的事件处理函数
2012-04-11 14:44 3通常情况下,我们使用事件机制时,编写的事件处理函数只需要一 ... -
关于as3运动效果的总结
2012-03-22 18:18 1048看了《ActionScript3.0高级动画教程》一书,用 ... -
ActionScript3高级动画教程笔记
2012-03-14 17:09 8062012.3.14 基本三角函数的计算: 角的正弦值 = ... -
Design Pattern: Adapter 模式 - Class Adapter
2012-03-09 10:42 710Adapter模式的另一种 ... -
Design Pattern: Adapter 模式 - Object Adapter
2012-03-08 16:00 675您的电脑是个旧电脑,新的滑鼠都在使用USB接口了,而您的电 ... -
Design Pattern: Default Adapter 模式
2012-03-08 15:12 993在Java中如果要定义事件处理的方式,必须实作EventL ... -
Design Pattern: Registry of Singleton 模式
2012-03-08 14:23 818考虑使用 Singleton 模式 时拥有子类别的问题,在 ... -
Design Pattern: Singleton 模式
2012-03-08 11:55 834Singleton的英文意义 ...
相关推荐
以下是从标题和描述中提取的四种PHP生成XML文件的方法: 1. **直接生成字符串**: 这是最基础的方法,通过构建字符串来生成XML。首先定义一个数据数组,然后逐个遍历数组,将数据转换成XML结构的字符串。在示例...
php生成xml文件
### PHP动态生成XML文件知识点详解 #### 一、概述 在Web开发中,XML(可扩展标记语言)是一种用于标记数据的语言,与HTML相似但更侧重于数据存储和传输。PHP作为一种广泛使用的服务器端脚本语言,能够轻松地处理...
生成XML文件则涉及创建XML元素和属性,然后保存到文件中。以下示例创建了一个简单的XML文档: ```php $xml = new DOMDocument('1.0', 'UTF-8'); $root = $xml->createElement('users'); $xml->appendChild($root); ...
数据库数据生成XML是一种常见的数据转换方法,用于在不同的系统间传递和交换信息。XML(Extensible Markup Language)是一种标记语言,它的设计目标是传输和存储数据,而不是显示数据。XML的结构化特性使得它成为跨...
### PHP从数据库中读取数据生成XML的知识点详解 #### 一、PHP连接MySQL数据库 在给定的脚本中,我们首先看到的是通过PHP连接MySQL数据库的操作。这部分代码使用了较旧的`mysql_`扩展,而不是推荐的`mysqli_`或`PDO...
使用纯粹的PHP代码生成字符串,并把这个字符串写入一个以XML为后缀的文件 使用XMLWriter类创建XML文件
PHP 提供了多种方式来生成和操作 XML 数据。这些功能非常强大,允许你创建、读取、修改和保存 XML 文档。在 PHP 中生成 XML 的常用方法包括使用 DOM...本压缩包即是PHP中使用 DOMDocument 生成XML的示例程序文件。
`crxml` 是一个专门为PHP设计的类库,用于生成XML格式的数据,尤其值得一提的是,它还支持生成RSS(Really Simple Syndication)格式的文件,这在创建新闻聚合、博客订阅源等方面非常有用。 `crxml` 类库的核心功能...
但是,由于它不支持XML的创建,所以如果需要生成XML文档,你需要使用其他方法。 2. **DOMDocument** DOM(Document Object Model)是一种W3C标准,提供了一种结构化表示XML文档的方式。PHP的DOMDocument类实现了这...
$xmlGenerator->addItemElement('description', '本文介绍如何使用PHP生成XML文件'); $xmlGenerator->addItemElement('pubDate', date(DATE_RSS)); $xmlGenerator->addItemElement('link', '...
在PHP中,处理XML数据是常见的任务,无论是生成XML文件还是从中提取信息。本文将详细介绍如何使用PHP进行XML的生成与读取,并结合已测试的有效代码示例来帮助理解。 一、PHP生成XML 1. 创建XML文档对象:首先,...
**PHP100视频教程90:PHP DOM 创建生成多功能 XML文件** 在这一教程中,我们将深入探讨如何使用PHP的DOM扩展来创建和操作XML文件。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,它具有...
PHP DOM生成XML文件 一、实验环境 1、环境搭建:Windows 8+Apache 2.4.18+MySQL 5.7.11+PHP 7.1.0 。 2、文本编辑器:Sublime Text3。 二、主要技术 本实验主要使用PHP 7的DOM组件创建生成一个XML文件。
在这个实例中,我们将通过PHP处理XML文件来动态生成家谱树。 首先,我们需要理解XML(Extensible Markup Language)的作用。XML是一种用于标记数据的语言,它允许我们以结构化的方式存储和传输信息。在我们的家谱树...
在PHP中,生成XML文件是常见的数据序列化和交换任务,尤其在Web服务和数据存储中。本篇文章将探讨三种不同的方法:直接写入、使用DOMDocument和使用SimpleXML,并通过性能测试比较它们的效率。 1. **直接写入XML**...
本篇文章将深入探讨如何生成XML文件,包括基本的XML结构、创建XML文件的方法以及使用编程语言如Python、Java进行XML文件生成。 一、XML的基本结构 XML文件的开头通常包含XML声明,用于指定使用的XML版本和字符编码...