PHP路径中的未定义索引

时间:2014-10-08 07:37:24

标签: php opencart

新手来到OpenCart扩展开发。我目前正在开发99Bill(中国支付方式)付款延期。

目前,我已将新文件添加到MVC目录中(因此,我在管理员,目录等下添加了文件,我在其中命名了我的扩展名bill99,因为PHP不允许以数字开头的名称)。

我试图测试我的扩展程序,但在我的OpenCart主页上,我收到以下错误:

  

注意:未定义的索引:第20行的/vagrant/opencart/upload/catalog/model/catalog/product.php中的mobile_description
注意:未定义的索引:/ vagrant / opencart / upload / catalog / model中的mobile_description第20行的/catalog/product.php
注意:未定义的索引:第20行的/vagrant/opencart/upload/catalog/model/catalog/product.php中的mobile_description
注意:未定义的索引:mobile_description in第20行的/vagrant/opencart/upload/catalog/model/catalog/product.php
注意:未定义的索引:第20行的/vagrant/opencart/upload/catalog/model/catalog/product.php中的mobile_description <注意:未定义的索引:第20行的/vagrant/opencart/upload/catalog/model/catalog/product.php中的mobile_description

我不太确定我是如何触发它的,因为我之前从未编辑或触摸过product.php文件。即使我禁用/卸载我的99Bill扩展名,也会出现错误。

当我导航到product.php时,第20行简单地说:

'description'      => $query->row['mobile_description']

我感觉我的错误与product.php文件无关,因为我以前从未接触过它,并且可能与我的99Bill扩展有关。我可能还没有在某个地方初始化课程。

对于以前遇到此错误的人,您能帮我理解一下吗?

1 个答案:

答案 0 :(得分:2)

嗯:第20行访问数组索引,不是吗?假设索引不存在,那么你的错误信息会不会有意义呢?尝试转储$query->row的内容或替换现有的内容:

'description'      => isset($query->row['mobile_description']) ? $query->row['mobile_description'] : null,

至于为什么,您会收到此通知:This answer explains that,并包含一些可帮助您重构代码的代码段