leigod 发表于 2009-10-25 00:55:21

请教CI输出xml元素值问题

本帖最后由 leigod 于 2009-10-25 00:56 编辑

请各位帮忙看看以下代码,为什么无法显示内容。
我的意图就是加载xml文档,读取其中的数据重新格式化后输出成html

xml文档代码bookstore.xml
<?xml version="1.0" encoding="utf-8"?>

<bookstore>

<book category="children">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>

<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>

</bookstore>


控制器代码
function test()
{

$url='bookstore.xml';
   
$htmlStr="<ul>";
$xmlDoc = new DOMDocument();
$xmlDoc->load($url);
$x = $xmlDoc->getElementsByTagName("book");

foreach ($x as $bookitem)
{
   $htmlStr=$htmlStr . "<li><a href=" . "'" . $bookitem->childNodes->nodeValue . "'>" . $bookitem->childNodes->nodeValue . "</a></li>";
}

$htmlStr=$htmlStr . "</ul>";

$data=array(
'title'=>'test title',
'book' => $htmlStr
);

$this->load->view('test',$data);
}


最后浏览器里什么信息也没有输出,查看源代码输出的信息为
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>


这段代码给我的感觉就是控制器根本就没有加载视图,没有输出任何内容
请各位了解xml的同学能告知原因

Hex 发表于 2009-10-25 10:03:18

<?xml version="1.0" encoding="utf-8"?>
这个要转义,因为 <? 是 PHP 代码的开始

leigod 发表于 2009-10-25 22:48:04

跟这个没关系吧

我是对一个 xmldoc对象操作

daing 发表于 2011-8-25 13:22:49

怎么转义呀?我不会呀!!!{:soso_e115:}

spt119 发表于 2011-8-26 14:32:47

用simplexml_load_file。别用dom,否则代码量一大堆。
页: [1]
查看完整版本: 请教CI输出xml元素值问题