首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >致命错误:调用未定义的方法objectInfo::objectInfo()

致命错误:调用未定义的方法objectInfo::objectInfo()
EN

Stack Overflow用户
提问于 2016-04-15 04:19:37
回答 2查看 532关注 0票数 0

我不知道我的问题到底出在哪里。看起来objectinfo是空的,我打开了这个错误。

代码语言:javascript
复制
Fatal error: Call to undefined method objectInfo::objectInfo() on  this line $bInfo->objectInfo($banner);

我的sql请求工作正常,并且我验证了

这就是我的代码,问题出在哪里。

Tk

代码语言:javascript
复制
$parameters = array('expires_date' => '',
                    'date_scheduled' => '',
                    'banners_title' => '',
                    'banners_url' => '',
                    'banners_group' => '',
                    'banners_target' => '',
                    'banners_image' => '',
                    'banners_html_text' => '',
                    'expires_impressions' => '',
                    'banners_title_admin' => ''
                    );

  $bInfo = new objectInfo($parameters);

  $bID = HTML::sanitize($_GET['bID']);

  $Qbanner = $OSCOM_PDO->prepare('select banners_title,
                                       banners_url,
                                       banners_image,
                                       banners_group,
                                       banners_target,
                                       banners_html_text,
                                       status,
                                       date_format(date_scheduled, "%Y-%m-%d") as date_scheduled,
                                       date_format(expires_date, "%d/%m/%Y") as expires_date,
                                       expires_impressions,
                                       date_status_change ,
                                       customers_group_id,
                                       languages_id,
                                       banners_title_admin
                                from :table_banners
                                where banners_id = :banners_id
                                ');
  $Qbanner->bindInt(':banners_id', (int)$bID);
  $Qbanner->execute();

  $banner = $Qbanner->fetch();

  $bInfo->objectInfo($banner); // pb is here
EN

回答 2

Stack Overflow用户

发布于 2019-12-27 20:06:28

正如我所说的,我知道这个致命的错误是由于php的更新版本造成的。早些时候,我们可以通过使用与类名相同的函数名自动加载类属性。在PHP的早期版本中,我们可以调用或定义与类名相同的函数名。但是在最新版本的php中,我们不能这样做。如果我们使用与类名相同的函数名,并且调用此函数名,则会出现致命错误,就像您在本文中收到的错误一样。

所以解决方案如下所示。

转到您的类文件当前所在的类objectInfo (或其他任何类

代码语言:javascript
复制
class objectInfo {
   function objectInfo($object_array) {
      your function code here.....
   }
 }

将函数名称从objectInfo更改为__construct。因此,整个类如下所示

代码语言:javascript
复制
class objectInfo {
       function __construct($object_array) {
            your function code here.....
       }
 }

当前调用的函数如下所示

代码语言:javascript
复制
$bInfo = new objectInfo($parameters);
$bInfo->objectInfo($banner);

因此,请按如下方式更改上述代码。

代码语言:javascript
复制
$bInfo = new objectInfo($parameters);
$bInfo->__construct($banner);

所以最后希望你的错误能被解决。

票数 1
EN

Stack Overflow用户

发布于 2016-04-15 04:34:48

$bInfo = new objectInfo($parameters);创建了objectInfo类的一个新实例。然后,您尝试调用该类的方法objectInfo()错误消息只是告诉你这个类没有这样的方法。你能展示一下objectInfo类的源代码吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36633186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档