使用php创建XML文件十分简单,使用SimpleXML那就更简便了,同时读取XML文件也十分方便。XML文件是直接在浏览器中打开,以自定义标签的方式直观简洁的方式展示给读者。

1.创建XML文件

header("Content-type: text/html; charset=utf-8");
$xml=new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><returnRequest />');
$item=$xml->addchild("client","DYSON");
$item1=$xml->addchild("distributionCentre","DAMCO"); $item2=$xml->addchild("order");
$item2->addchild("ref",$info_all['id']);
$item2->addchild("id","??");
$item2->addchild("store","CN");
$item3 = $item2->addchild("detail");
$item3->addchild("created",$info_all['crated']);
$item3->addchild("customer");
$item3->addchild("ip");
$item3->addchild("language","cn-GB");
$item3->addchild("vatCountry","CN");
$item3->addchild("origin","DYSON");
$item3->addchild("originDate",$info_all['crated']);
$item3->addchild("customerReference","???");
$item3->addchild("csAgent");
$item4 = $item2->addchild("people");
$item4_1 = $item4->addchild("person");
$item4_1->addchild("ref");
$item4_1->addchild("title");
$item4_1->addchild("firstName",$info_all['receiver_name']);
$item4_1->addchild("lastName");
$item4_1->addchild("phone",$info_all['receiver_mobile']);
$item4_1->addchild("fax");
$item4_1->addchild("mobile");
$item4_1->addchild("email");
$item4_1->addchild("department");
$item4_1->addchild("companyName");
$item4_1->addchild("gender");
$item4_1->addchild("dateofbirth");
$item5 = $item2->addchild("address");
$item5_1 = $item5->addchild("address");
$item5_1->addchild("addresstype","customer");
$item5_1->addchild("addrss1",$info_all['receiver_district']);
$item5_1->addchild("addrss2",$info_all['receiver_address']);
$item5_1->addchild("city",$info_all['receiver_city']);
$item5_1->addchild("state",$info_all['receiver_state']);
$item5_1->addchild("zip",$info_all['receiver_zip']);
$item5_1_1 = $item5_1->addchild("country");
$item5_1_1->addchild("code","CN");
$item5_1_1->addchild("name","CHINA"); header("Content-type: text/xml");
// echo $xml->asXml();exit;
$xml->asXml("test.xml");

使用addchild方法可以无限创建XML标签,同时也可以无限层级,类似多维数组形式。文件打开显示为

2.解析XML文件

$xml = simplexml_load_file("test.xml");

     $data['client'] = $xml->client;
$data['language'] = $xml->order->detail->language; echo $data['language'];

使用 simplexml_load_file 函数可以解析XML文件 可以获取指定标签中的数据 (->标签)箭头指向哪个标签便获取所在标签中的数据。

PHP之SimpleXML函数的更多相关文章

  1. PHP 5 SimpleXML 函数

    PHP SimpleXML 简介 SimpleXML 扩展提供了一种获取 XML 元素的名称和文本的简单方式,只要您知道 XML 文档的布局. SimpleXML 转换 XML 文档到 SimpleX ...

  2. PHP SimpleXMLElement::__toString SimpleXML 函数

    定义和用法 SimpleXMLElement::__toString - 返回字符串内容 版本支持 PHP4 PHP5 PHP7 不支持 支持 支持 语法 SimpleXMLElement::__to ...

  3. PHP中遍历XML之SimpleXML

    简单来讲述一些XML吧,XML是可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言.XML是当今用于传输数据的两大工具之一,另外一个是json. 我们在PHP中使用XML也是用来传输数据, ...

  4. HP SimpleXML

    PHP SimpleXML PHP SimpleXML 处理最普通的 XML 任务,其余的任务则交由其它扩展处理. 什么是 PHP SimpleXML? SimpleXML 是 PHP 5 中的新特性 ...

  5. PHP SimpleXML

    安装 SimpleXML 扩展需要 PHP 5 支持. 自 PHP 5 起,SimpleXML 函数是 PHP 核心的组成部分.无需安装即可使用这些函数. PHP 5 SimpleXML 函数 函数 ...

  6. Php函数完整参考手册

    序号 分类 描述 1 Array 函数 2 Calendar 函数 日历扩展包含了简化不同日历格式间的转换的函数. 3 Date/Time 函数 Date/Time 函数用于从 PHP 脚本运行的服务 ...

  7. PHP XML SimpleXML

    PHP 可以基于 SimpleXML 生成和解析 xml 的方法,通过本节的实例,你将了解 PHP 是如何使用 SimpleXML 生成及解析 xml 格式数据的. PHP SimpleXML 处理最 ...

  8. 什么是 PHP SimpleXML?

    PHP SimpleXML PHP SimpleXML 处理最普通的 XML 任务,其余的任务则交由其它扩展处理. 什么是 PHP SimpleXML? SimpleXML 是 PHP 5 中的新特性 ...

  9. PHP 语言特性

    一.PHP 超级全局变量 PHP 超级全局变量列表: $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION ...

随机推荐

  1. iOS开发中断言的使用—NSAssert()

    原文链接:http://blog.csdn.net/univcore/article/details/16859263 断言(assertion)是指在开发期间使用的.让程序在运行时进行自检的代码(通 ...

  2. css元素垂直居中的8中方法

    1. 通过vertical-align:middle实现CSS垂直居中 通过vertical-align:middle实现CSS垂直居中是最常使用的方法,但是有一点需要格外注意,vertical生效的 ...

  3. IDEA + SpringBoot + Java搭建Web项目

    打开IDEA,选择Spring Initializr,默认配置,点击Next  添写GAV.(group.Artifact.Version)  选择Spring Boot版本,这里选2.1.4稳定 ...

  4. 题解 p2420 让我们异或吧

    传送门 #include<iostream> #include<cstdio> #include<cstring> using namespace std; ;in ...

  5. C# 文件读写系列二

    读取文件原则上非常简单,但它不是通过FileInfo和DirectoryInfo来完成的,关于FileInfo和DirectoryInfo请参考C# 文件操作系列一,在.Net Framework4. ...

  6. python-queue队列通信

    #!/usr/bin/python from multiprocessing import Process,Queue import time l=[] q=Queue() def f(name): ...

  7. [中英对照]The Art Of Reporting Bugs | 报bug的艺术

    前言:因为最近要给兄弟Team分享一下如何有效地报告bug, 故多做一做功课.下面给出一篇博客的中英文对照翻译. The Art Of Reporting Bugs | 报bug的艺术 My init ...

  8. 草稿-把vim变成IDE

    从昨天下午到现在一直在研究vim,初学者,从vim最基本的命令开始看起的.是通过vimtutor学习的. 看到最后一章的时候,发现原来vimtutor中的知识知识vim中的冰山一角,vim真正的强大之 ...

  9. JetBrains 产品激活码

    激活码 K03CHKJCFT-eyJsaWNlbnNlSWQiOiJLMDNDSEtKQ0ZUIiwibGljZW5zZWVOYW1lIjoibnNzIDEwMDEiLCJhc3NpZ25lZU5hb ...

  10. 设计模式应用场景之Model设计中可以用到的设计模式

    在开发中,不同的场景适用不同的设计模式.对于开发建模方面,可以根据模型的抽象类型设计成简单属性模式和复杂组合模式. 因为组合模式中的属性为多种类型对象,可操作性也比较灵活. 而针对这种复杂数据结构,有 ...