### 一、问题描述 当您在Dedecms中使用自定义模型,并尝试更新列表页时,可能会遇到如下错误提示:
Fatal error: Call to a member function GetInnerText() on a non-object in E:wwwincludetaglibchannelimg.lib.php on line 51
### 二、问题原因 此错误通常发生在更新自定义模型栏目列表时。具体来说,问题出现在`includetaglibchannelimg.lib.php`文件中的第51行左右。系统尝试通过`$arcTag->GetInnerText()`获取内部文本内容,但如果`$arcTag`对象为空,则会导致上述错误。
### 三、解决方法 修复此问题的方法非常简单,只需对`includetaglibchannelimg.lib.php`文件进行修改即可。以下是具体步骤: 1. **打开文件**:找到并编辑`includetaglibchannelimg.lib.php`文件。 2. **定位代码**:查找类似以下的代码:
$innerTmp = $arcTag->GetInnerText();
$innerTmp = ($arcTag == "") ? trim($arcTag) : trim($arcTag->GetInnerText());
if ($arcTag == "") {
$innerTmp = trim($arcTag);
} else {
$innerTmp = trim($arcTag->GetInnerText());
}
### 四、总结 通过以上修改,您可以有效避免因`$arcTag`对象为空而导致的错误。此问题的根本原因是系统在处理某些标签时未充分验证对象的有效性。通过增加条件判断,可以确保程序在任何情况下都能正常运行。 希望本文能帮助您顺利解决Dedecms自定义模型中的相关问题。如果您还有其他疑问或需要进一步的帮助,请随时查阅官方文档或联系技术支持团队。
注意:在修改核心文件前,请务必备份原始文件,以防止意外情况发生。