首页 > 解决方案 > PHP,致命错误:从另一个类调用未定义的方法调用函数

问题描述

我有一个简单的 PHP 结构。

在 admin_keys.php 我有:

<?php
class admin_keys
{
    public $key;
    private $arr_keys = array("1", "2", "3");
    public function check_key_admin()
    {
        if(in_array($this->key,$this->$arr_keys))
        {
            return true;
        }else
        {
            return false;
        }
    }
}
?>

在 ok.php 我有:

<?php
include_once '../../all_keys.php';
$admin_keys = new admin_keys();
$admin_keys->key = "vailozluon";
$_isAdmin = $admin_keys->check_key();
  if( _isAdmin== false)
  {
    echo 'deo phai';
  }else { echo 'ok';}
?>

我是新手,所以请耐心等待我不知道为什么会返回未捕获的错误:调用未定义的方法 admin_keys::check_key 任何帮助将不胜感激。

谢谢!

标签: phpfunctionmethodsundefinedcall

解决方案


您指的是在您的class admin_keys. 您有名为 check_admin_key() 的函数,但您试图以 check_key() 的形式访问它,但显然不存在会引发错误。所以只需将被调用的函数的名称更改为

$_isAdmin = $admin_keys->check_admin_key();

推荐阅读