Php 致命错误:未捕获错误:调用未定义函数-必须使用$this

Php 致命错误:未捕获错误:调用未定义函数-必须使用$this,php,function,scope,fatal-error,Php,Function,Scope,Fatal Error,这是我的密码: <?php public function __construct() { getUsername(); } public function getUsername() { //blah blah blah return "bobby"; } ?> 它不起作用,并显示以下错误: 致命错误:未捕获错误:调用未定义的函数 但是如果我像这样调用构造函数中的函数:$this->getUsername()它可以工作。为什么会这样?它无法识别

这是我的密码:

<?php

public function __construct() {
    getUsername();
}

public function getUsername() {
    //blah blah blah

    return "bobby";
}

?>

它不起作用,并显示以下错误:

致命错误:未捕获错误:调用未定义的函数


但是如果我像这样调用构造函数中的函数:
$this->getUsername()它可以工作。为什么会这样?

它无法识别您的方法。我们必须告诉它使用
getUsername()
方法,它在这个类中是这样的
$this->getUsername()
$this->
用于在此类中查找。
阅读此

getUsername()
是一个方法,而不是函数。
$this->nameOfFunction()
,当它们在类中时,称为方法。阅读此答案以了解方法和函数之间的区别。