即使定义了类,也要在类中调用未定义的方法

时间:2012-11-10 23:50:29

标签: php doctrine-orm codeigniter-2

我在apache错误日志中出现以下错误消息:

  

PHP致命错误:在第544行的/var/www/www.website.com/application/libraries/MyWebsite/Model/ContentVersion.php中调用未定义的方法MyWebsite \ Model \ ContentMedia :: getImagePath()

ContentVersion.php的第544行打电话:

$cm->getImagePath('img', 'small');

ContentMedia类扩展了另一个名为Model的类,其中 具有该方法:

class ContentMedia extends \MyWebsite\Model{

...... Model类:

namespace MyWebsite;

class Model{

    public function getImagePath($field, $size = null){

        ...
    }

我偶尔会在日志文件中显示此错误,因此它可能是用户遇到此问题的一个特定实例,但我不知道在哪里。此方法在整个站点中使用,并且可以正常工作。如果明确定义了该方法,该如何抛出此错误?

我考虑过检查访问日志以将确切请求的URL与错误的时间戳匹配,但是访问日志当然非常大,所以关于如何从大型访问中输出大量时间的任何建议日志会很棒。

我使用的是Doctrine 2和Codeigniter 2。

1 个答案:

答案 0 :(得分:0)

我的第一个想法是检查脚本中是否存在模型实例。您是否尝试过为了测试而创建另一个函数,它只会回显“正确实例化Object和继承函数”之类的内容。

这样我们可以稍微缩小问题范围