php - 为什么我收到 "Call to a member function on a non-object"错误?

标签 php mysql zend-framework

我正在使用由 MySQL 支持的 Zend 框架,并尝试设置索引 View 。但是,使用我的代码,我不断收到“调用非对象上的成员函数”错误,并且我不知道如何解决它。这是我的索引页的 Controller :

 public function indexAction() {
     $dImage = new Application_Model_DImage();
 }

这是它引用的 DImage 模型的代码:

public function getImageDesCol ($Id) {
    return $this->getDb()->fetchCol("SELECT description FROM d_image WHERE d_id = ?", $Id);
}

最后,这是我的索引 View 页面的源代码,我试图在其中显示 DImage 模型中的值:

  <?php $description = $this->dImage->getImageDesCol($id) ?>
  <label><?php echo $description[0] ?></label>

当我加载该页面时,我收到“在非对象上调用成员函数 getImageDesCol()”错误,而不是呈现的页面。由于我对 Zend 框架和 PHP 总体来说是新手,所以我觉得我明显缺少一些东西。我可以做什么来解决这个问题?

最佳答案

更改:

 public function indexAction()
 {
     $dImage = new Application_Model_DImage();
 }

致:

 public function indexAction()
 {
     $this->dImage = new Application_Model_DImage();
 }

关于php - 为什么我收到 "Call to a member function on a non-object"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6258925/

相关文章:

php - 更新 php 扩展 Ubuntu

mysql - 检查行是否存在于不同数据库中

zend-framework - Zend Framework Url View Helper 默认添加 "id"

php - 将值传递给 Zend Framework 中的布局......?

PHP, MySQL : Receive email, 在数据库中自动搜索并根据结果发送邮件

javascript - 使用 PHP 和 JavaScript 动态搜索 SQL 表并在 HTML 上显示

PHP/MySql/Jquery 脚本与 RAM

php - 插入查询到MYSQL数据库

php - zend_form ViewScript 装饰器/传递参数

php - 如何从 moltin 获取产品中获取特定数组值