您的位置:首页 > 编程语言 > PHP开发

PHP 和 XML: 使用expat函数(二)

2013-09-05 19:01 155 查看
PHP 和 XML: 使用expat函数(二)

  让我们看一下实际处理这个文档的PHP代码。

/*NewsBoy : News system for the web written in PHP by Justin Grant (Web: jusgrant.cjb.net or justin.host.za.net Mail: justin@glendale.net)25 March V0.0.2 Converted Newsboy to a PHP class, allowing the layout to be easily modified. Also added made the HTML that is genrated a little easier to read.24 March V0.0.1 Just completed the intial version, very rough and basic.*/

class newsboy { var $xml_parser; var $xml_file; var $html; var $open_tag ; var $close_tag ;

//Class Constructor

function newsboy() { $this->xml_parser = ""; $this->xml_file = ""; $this->html = ""; $this->open_tag = array(

//these are the default settings but they are quite easy to modify

"NEWSBOY" => "nn", "STORY" => " ", "DATE" => "", "SLUG" => " ", "TEXT" => "", "PIC" => "", "NEWLINE" => "" ); $this->close_tag = array( "NEWSBOY" => "

nnn", "STORY" => "", "DATE" => "", "SLUG" => "

", "TEXT" => "n", "PIC" => " "

" ); }

//Class Destructor (has to be invoked manually as PHP does not support destructors)

function destroy() { xml_parser_free($this->xml_parser); }

//Class Members

function concat($str) { $this->html .= $str; }

function startElement($parser, $name, $attrs) { //global $open_tag; if ($format= $this->open_tag[$name]) { $this->html .= $format; } }

function endElement($parser, $name) { global $close_tag; if ($format= $this->close_tag[$name]) { $this->html .= $format; } }

function characterData($parser, $data) { $this->html .= $data; }

/* function PIHandler($parser, $target, $data) { //switch (strtolower($target)){ // case "php": eval($data); // break; //} }*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: