我正在尝试为egg编写一个类似于书签插件的插件。我发现php不做"innerHTML",所以我添加了一些代码到我的插件库来完成。但是我得到这个错误:
PHP致命错误:调用未定义的函数DOMinnerHTML()/var/www/html/mod/mypluginname/动作/mypluginname/save_address.php在第71行,参考:http://www.example.com/mypluginname/add_address/49
主叫代码:
mytitle = $doc->getElementById('myTitle');
if($mytitle){
$title = DOMinnerHTML($mytitle);
}
/var/www/html/mod/mypluginname/actions/mypluginname/save_address.php的第71行是:
$ title = DOMinnerHTML ($ mytitle);
函数在/var/www/html/mod/mypluginname/lib/mypluginname.php:
function DOMinnerHTML(DOMNode $element)
{
$innerHTML = "";
$children = $element->childNodes;
foreach ($children as $child)
{
$innerHTML .= $element->ownerDocument->saveHTML($child);
}
return $innerHTML;
}
知道为什么这个函数不被认为是"定义的"吗?"
书签插件正在使用库加载函数elgg_load_library
。这允许您通过名称而不是绝对路径来引用库,这使事情变得更加灵活。
如果你想在你的插件中使用它,你需要在start.php中使用elgg_register_library
。
您必须包含或要求mypluginname.php ?