我的帮手有一些奇怪的事情。首先,我刚开始使用 cakePHP 和 MVC。也许我做错了什么,但找不到什么。
对于我的应用程序,我必须使用 Xml 文件来处理我的文本的语言(我知道有很多不同的方式来处理语言,但我需要使用这个)。所以我创建了一个助手(XmlHelper.php,在 View\Helper\Xmlhelper.php 中)
<?php
App::uses('AppHelper', 'View/Helper','Xml');
class XmlHelper extends AppHelper {
var $xml = array();
var $name = 'Xml';
var $filename = '';
public function getXml($filename, $language, $view) {
$this->xml = Xml::toArray(Xml::build('Xml/'.$filename.'.xml')); //THE LINE
$this->xml = $this->xml[$filename][$language][$view];
$this->filename = $filename;
}
public function readXml($tags) {
$tempXml = $this->xml;
foreach ($tags as $tag){
$tempXml = $tempXml[$tag];
}
return $tempXml;
}
}
从我的控制器我得到:
class EventsController extends Controller {
public $helpers = array('Html', 'Form','Xml');
public $components = array('Session');
在我的大部分观点中,一切正常,但其他一些只是开火
Error: Class 'Xml' not found File:
C:\wamp\www\cakephp\app\View\Helper\Xmlhelper.php Line: 11
在我看来,我打电话:
<?php $this->Xml->getXml('dico',$ln,'thanks'); ?>
<h1><?php echo $this->Xml->readXml(array('texte'));?></h1>
ln 定义明确。
如果有人可以解释我出了什么问题,那将非常感激!