Chinaunix首页 | 论坛 | 博客
  • 博客访问: 18670487
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类:

2008-05-27 22:02:10

本文节选于《Programming PHP》第二版(中译名《PHP程序设计》第二版,Haohappy等译,电子工业出版社出版)

11.2  生成XML

Generating XML  

PHP可以生成(创建)动态 HTML,也可以生成动态XML。你可以为其他程序生成基于表单、数据库查询的XML,也可以为PHP中可以做的任何事生成XML。动态XML的一个典型 应用是RSS(丰富站点摘要,Rich Site Summary,另一种解释为真正简易聚合,Really Simple Syndication),一种用来同步新闻站点的文件格式。你可以读取数据库或者HTML文件中的文章信息,生成一个基于这些信息的XML摘要文件。

用PHP生成XML文档很简 单。只需要用header()函数把文档的MIME类型改成"text/ xml"。为了避免声明被解释为一个PHP标签,你也需要编辑php.ini,将short_open_tag选项设为不启用,或者直接用echo把这一行打印出 来:

 echo '';

?>

示例11-1用PHP生成一个 RSS文档。RSS文件是一个包含有若干个channel元素的XML文档,每个channel包含有几个item元素,每个item元素又包含有一个 title、一个description和一个link元素。实际上RSS所支持的属性比示例11-1中所展示的要多。就像PHP生成HTML没用到什么 特殊函数一样,用PHP生成XML也只需要用echo打印内容即可。

示例11-1:生成一个XML文档

 ''>

 

   

     // news items to produce RSS for

     $items = array(

                    array('title' => 'Man Bites Dog',

                          'link'  => '',

                          'desc'  => 'Ironic turnaround!'),

                    array('title' => 'Medical Breakthrough!',

                          'link'  => '',

                          'desc'  => 'Doctors announced a cure for me.')

                    );

     foreach($items as $item) {

       echo "\n";

       echo "  {$item[title]}\n";

       echo "  {$item[link]}\n";

       echo "  {$item[desc]}\n";

       echo "  en-us\n";

       echo "\n";

     }

    ?>

 

 ''>

 

   

  Man Bites Dog

 

  Ironic turnaround!

  en-us

  Medical Breakthrough!

 

  Doctors announced a cure for me.

  en-us

 

阅读(382) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~