我是PHP新手,但來自Java背景。我在用下面的代碼混淆:PHP中的變量帶來的麻煩
class Student
{
//public $name;
public function __construct($name)
{
$this->name=$name;
}
public function showname()
{
echo $this->name;
}
}
在上面的代碼,如果我評論線public $name;
它仍然有效。但是,在Java中它不應該工作。我想在PHP中理解這種行爲。
那麼什麼是你的問題dupliacte? PHP和Java是不同的。您不必在PHP中預先定義公共類變量。 – naththedeveloper
是的,PHP爲你做的(我認爲他們默認爲「public」)。 – kero
通過聲明'$ this-> name',您可以將'name'的屬性添加到'$ this'中。如果你聲明它是公開的,你可以在類範圍之外訪問它。如果你聲明它是私有的,當你嘗試從類之外訪問它時,PHP會拋出錯誤。所以,我認爲即使你沒有聲明爲私人,保護或公開,它也可以在班級範圍內工作。 – iamsleepy