【发布时间】:2013-09-25 06:36:25
【问题描述】:
现在变得越来越奇怪了。我花了三个多小时才弄清楚,直到没有结果。我想遍历一个简单的 XML 文件并将结果显示在页面上。
这是我的 XML 代码:
<?xml version="1.0"?>
<CATALOG>
<DATA>
<ENTITY_ID>0111</ENTITY_ID>
<PARENT_ID>0222</PARENT_ID>
<LEVEL>0333</LEVEL>
</DATA>
<DATA>
<ENTITY_ID>0111</ENTITY_ID>
<PARENT_ID>0222</PARENT_ID>
<LEVEL>0333</LEVEL>
</DATA>
</CATALOG>
这是我的模型:
<?php
class xmlmodel extends CI_Model{
public function catalog(){
$doc = new DOMDocument();
$path = 'application/libraries/xml.xml';
$doc->load($path);//xml file loading here
$data = $doc->getElementsByTagName('DATA');
foreach($data as $links){
$entity_ids = $links->getElementsByTagName('ENTITY_ID');
$parent_ids = $links->getElementsByTagName( "PARENT_ID" );
return $links;
}}}
?>
这是我的控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index()
{
$this->load->model('xmlmodel');
$data['category_catalog_entity'] = $this->xmlmodel->catalog();
$this->load->view('welcome_message', $data);
}
}
这是我的观点:
<?php
foreach($category_catalog_entity as $result){
echo $result;
}
?>
也许你们可以给我另一个想法,因为这种方式根本没有意义,我没有任何错误,只是空白没有显示任何内容。希望有人帮助我。谢谢
【问题讨论】:
-
您的 xml 不完整。
-
没关系,这里缺少结束标记,但我的代码中没有。然而只是固定的。
-
@DanielDake,你确定它正在打开
application/libraries/xml.xml吗? -
这是一件小事,但有一个关闭?> 可能会在框架中弄乱您的 php 文件 - 建议您不要使用它们。并且xml文件的路径可能不完整。
-
@DrixsonOseña 是的,我确定,因为没有给我任何错误。
标签: php xml codeigniter loops foreach