使用字符串参数在 Codeigniter 中加载扩展库
Loading extended library in Codeigniter with string params
在我 CI 中的一个模型中,我需要创建一个 SimpleXmlElement
对象,但我需要先扩展它才能使用 CDATA。
所以我创建了一个库:
class SimpleXMLExtended extends SimpleXMLElement
{
public function addCData($cdata_text)
{
$node = dom_import_simplexml($this);
$no = $node->ownerDocument;
$node->appendChild($no->createCDATASection($cdata_text));
}
}
然后在我的模型中加载这个库:
$template = $this->load->library('SimpleXMLExtended', 'xml_template.php');
但是由于 SimpleXMLElement
需要一个字符串参数(并且 codeigniter 只能根据文档传递一个数组)它显示错误:
SimpleXMLElement::__construct() expects at least 1 parameter, 0 given
.
那么我该如何加载这个库?
这不是 codeigniter 问题,而是 SimpleXMLElement 的实现方式。
这很好地解释了正在发生的事情以及如何使其发挥作用。
Previous answer from Whosebug
在我 CI 中的一个模型中,我需要创建一个 SimpleXmlElement
对象,但我需要先扩展它才能使用 CDATA。
所以我创建了一个库:
class SimpleXMLExtended extends SimpleXMLElement
{
public function addCData($cdata_text)
{
$node = dom_import_simplexml($this);
$no = $node->ownerDocument;
$node->appendChild($no->createCDATASection($cdata_text));
}
}
然后在我的模型中加载这个库:
$template = $this->load->library('SimpleXMLExtended', 'xml_template.php');
但是由于 SimpleXMLElement
需要一个字符串参数(并且 codeigniter 只能根据文档传递一个数组)它显示错误:
SimpleXMLElement::__construct() expects at least 1 parameter, 0 given
.
那么我该如何加载这个库?
这不是 codeigniter 问题,而是 SimpleXMLElement 的实现方式。
这很好地解释了正在发生的事情以及如何使其发挥作用。
Previous answer from Whosebug