方法一
$doc = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
$rootEle = $doc->createElement('root');
$doc->appendchild($rootEle);
$descriptionEle = $doc->createElement('description');
$rootEle->appendChild($descriptionEle);
$couponNameEle = $doc->createElement('couponName');
$couponDescriptionEle = $doc->createElement('couponDescription');
$couponNameEle->appendChild($doc->createTextNode('jiuzhe'));
$couponDescriptionEle->appendchild($doc->createTextNode('jiuzhedescription'));
$descriptionEle->appendchild($couponNameEle);
$descriptionEle->appendChild($couponDescriptionEle);
$detailEle = $doc->createElement('detail');
$rootEle->appendchild($detailEle);
$itemEle = $doc->createElement('item');
$detailEle->appendChild($itemEle);
$codeEle = $doc->createElement('code');
$codeEle->appendchild($doc->createTextNode('666666'));
$itemEle->appendchild($codeEle); $itemEle = $doc->createElement('item');
$detailEle->appendChild($itemEle);
$codeEle = $doc->createElement('code');
$codeEle->appendchild($doc->createTextNode('999999'));
$itemEle->appendchild($codeEle);
$doc->save('/home/susie/workspace/' . 'offer-coupon.xml');
<root>
  <description>
    <couponName>jiuzhe</couponName>
    <couponDescription>jiuzhedescription</couponDescription>
  </description>
  <detail>
    <item>
      <code>666666</code>
    </item>
    <item>
      <code>999999</code>
    </item>
  </detail>
</root>

方法二:

$lineFeed = "\n";

$xml = '<?xml version="1.0" encoding="utf-8"?>' . $lineFeed;
$xml .= '<root>' . $lineFeed;
$xml .= '<description>' . $lineFeed;
$xml .= '<couponName>' . "1111" . '</couponName>' . $lineFeed;
$xml .= '<couponDescription>' . "222" . '</couponDescription>' . $lineFeed;
$xml .= '<quantity>' . "3333" . '</quantity>' . $lineFeed;
$xml .= '</description>' . $lineFeed;
$xml .= '<codes>' . $lineFeed;
$xml .= '<code>' . "codecode" . '</code>' . $lineFeed;
$xml .= '</codes>' . $lineFeed;
$xml .= '</root>' . $lineFeed;

下载xml文件

header("Content-Type:text/xml charset=UTF-8");
header("Content-Disposition:attachment; filename=offer-coupon.xml");
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Expires:0');
header('Pragma:public');
$fp = fopen('php://output', 'a'); fwrite($fp, $xml); fclose($fp);
die();

参考网站: http://yedward.net/?id=21

php 生成和下载xml文件的更多相关文章

  1. 下载Xml文件方法

    #region 下载Xml文件方法 //定义委托 private delegate void DownLoadDelegate(string url, string filename); privat ...

  2. C#动态生成图书信息XML文件

    通过C#动态生成图书信息XML文件,下面有个不错的示例,需要的朋友可以参考下 通过C#动态生成图书信息XML文件(Books.xml),文件如下: 复制代码代码如下: <?xml version ...

  3. dom4j生成和解析xml文件

    dom4j生成和解析xml文件 要生成和解析如下格式的xml文件: <?xml version="1.0" encoding="UTF-8"?> & ...

  4. 108.生成和下载csv文件

    生成CSV文件 有时候我们做的网站,需要将一些数据,生成一个csv文件返回浏览器,并且是作为附件的形式下载下来. 生成小的csv文件: 生成一个小的csv文件,我们用Python内置的csv模块来处理 ...

  5. 【转】Java生成plist下载ipa文件

    我们在上传ipa想要安装的时候必须要通过plist文件去下载,并且还要遵循 itms-services协议. 意思就是,第一步我们要生成一个plist文件, 第二步生成一个html文件,用来指向pli ...

  6. C#生成、解析xml文件以及处理报错原因

    转载自:http://blog.csdn.net/lilinoscar/article/details/21027319 简单的介绍一下生成XML文件以及解析,因为有些数据不一定放到数据库,减少链接数 ...

  7. C++生成和解析XML文件

    1.xml 指可扩展标记语言(EXtensible Markup Language) 2.xml 是一种标记语言,类似html 3.xml 的设计宗旨是传输数据,而非显示数据 4.xml 标签没有被预 ...

  8. SSM 生成mapper中xml文件:未能解析映射资源:“文件嵌套异常

    错误日记我就网上随便找个贴着: 错误一: org.springframework.beans.factory.BeanCreationException: Error creating bean wi ...

  9. C# 利用FTP自动下载xml文件后利用 FileSystemWatcher 监控目录下文件变化并自动更新数据库

    using FtpLib; using System; using System.Collections.Generic; using System.ComponentModel; using Sys ...

随机推荐

  1. 算法导论之python实现插入排序

    插入排序的花费时间 c*n2, c 是常数 伪代码 INSERTION-SORT(A) for i  to A.length key = A[j] //Insert A[j] into the sor ...

  2. mongodb spring

    可参考 http://blog.csdn.net/cuiran/article/details/8287204 我修改后的代码 http://pan.baidu.com/s/1mgJYbaC

  3. Leakcanary

    一.什么是内存泄漏 垃圾回收器无法回收应被回收的对象比如:在Activity生命周期过程中,旋转屏幕时应新建activity,原activity应被销毁.但如果线程一直在引用此activity,则会出 ...

  4. 使用 ExpandableListView 实现折叠ListView

    1:layout/expandablelistview_groups.xml 标题文件 <?xml version="1.0" encoding="utf-8&qu ...

  5. PCB布线的地线干扰与抑制方法

    1.地线的定义什么是地线?大家在教科书上学的地线定义是:地线是作为电路电位基准点的等电位体.这个定义是不符合实际情况的.实际地线上的电位并不是恒定的.如果用仪表测量一下地线上各点之间的电位,会发现地线 ...

  6. jQuery 弹出div层

    目的:使用jQuery弹出一个div窗口:这种效果经常应用于页面内容的展示,登录效果的实现.其实,实现这种效果有好多种方式: 效果如下: 代码如下: <html> <head> ...

  7. MVC中使用EF(2):实现基本的CRUD功能

    MVC中使用EF(2):实现基本的CRUD功能 By  Tom Dykstra |July 30, 2013 Translated by litdwg   Contoso University示例网站 ...

  8. JAVA并发实现二(线程中止)

    package com.subject01; public class InterruptDemo { public static void main(String[] args) { SimpleT ...

  9. [转]notifyDataSetChanged() 动态更新ListView

    有时候我们需要修改已经生成的列表,添加或者修改数据,notifyDataSetChanged()可以在修改适配器绑定的数组后,不用重新刷新Activity,通知Activity更新ListView.今 ...

  10. C++ Primer 学习笔记_77_模板与泛型编程 --实例化

    模板与泛型编程 --实例化 引言: 模板是一个蓝图,它本身不是类或函数.编译器使用模板产生指定的类或函数的特定版本号.产生模板的特定类型实例的过程称为实例化. 模板在使用时将进行实例化,类模板在引用实 ...