使用字符串参数在 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