方法一
$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. MySQL跨表更新字段 工作记录

    工作中遇到两表查询,从user表中获取用户唯一id字段 写入到另外一张qiuzu表中的uid字段中; 二者可以关联起来的只有用户的手机号码tel字段; 了解需求后数据量稍多,不可能一个一个的手动修改 ...

  2. 设置iOS项目BuildVersion自动增加-备用

    一.概念阐述:Build与Version的区别 在iOS中有两种“版本号”,也就是所谓的version号与build号,如下图所示: 我们用最简洁的语言来区分这两个版本号的区别以及用途如下: Vers ...

  3. bash模式和模式匹配

    bash模式和模式匹配 ${variable#pattern} 如果模式匹配变量取值的开头,删除最短匹配部分,返回其余部分 ${variable##pattern} 如果模式匹配变量取值的开头,删除最 ...

  4. Android SQLite简介

    SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP, Python)都使 ...

  5. Html5/Css3 向下兼容placeholder

    Css3下input标签的placeholder属性在IE10以下是不兼容的,页面加入这段JS脚本后,能够兼容IE6+ //@charset "utf-8"; /** * jque ...

  6. C++ 中 struct和class 的区别

    来自:http://hi.baidu.com/pengxiangbobin19890125/blog/item/b05586eee77300212df53411.html   C++ prime  中 ...

  7. opencv视频跟踪2

    在前面的报告中我们实现了用SURF算法计算目标在移动摄像机拍摄到的视频中的位置.由于摄像机本身像素的限制,加之算法处理时间会随着图像质量的提高而提高,实际实验发现在背景复杂的情况下,结果偏差可能会很大 ...

  8. oracle10.2 dblink impd 同库不同用户复制数据

    同库不同用户复制数据 1.授权用户导入表权限; SQL> grant exp_full_database to system; SQL> commit; 2.创建dblink; SQL&g ...

  9. <php>对文件的目录、属性、路径的操作

    //filetype("1.jpg");//当前路径用./或者不写:上一级用../: //echo filetype("./1.jpg"); //判断./1.j ...

  10. World Wind Java开发之十五——载入三维模型

    之前的一篇博客是关于载入粗三维模型的,见http://blog.csdn.net/giser_whu/article/details/43452703,这个地方还存在着不能载入纹理的问题,一直没呢解决 ...