PHP致命错误:在非对象上调用成员函数:区分大小写

Jam*_*ton 2 php methods object case-sensitive fatal-error

PHP 5.2报告"PHP致命错误:在非对象上调用成员函数convert()"虽然我特别检查该对象是否存在并且它包含所需的方法.

这是PHP:

error_log(gettype($userform));
error_log(method_exists($userform, "convert"));

$result = $userForm->convert($arrData);
Run Code Online (Sandbox Code Playgroud)

以下是错误日志中的相应摘录:

[...] object
[...] 1
[...] PHP Fatal error:  Call to a member function convert() on a non-object
      in /file/name.php on line 140
Run Code Online (Sandbox Code Playgroud)

以下是方法本身:

  public function convert(&$arrData) {
    // Bare-bones code
    return true;
  }
Run Code Online (Sandbox Code Playgroud)

我在俯瞰什么?

Luc*_*ney 7

我能看到的:

error_log(gettype($userform));
error_log(method_exists($userform, "convert")); //$userform

$result = $userForm->convert($arrData); //$userForm
Run Code Online (Sandbox Code Playgroud)

转换方法存在$ userform,但不存在$ userForm,这就是你调用方法的方法.PHP变量名称区分大小写.