ฉันมีปัญหา:
ฉันกำลังเขียน WebApp ใหม่โดยไม่มี Framework
ในindex.phpของฉันฉันใช้:require_once('load.php');
และในload.phpฉันใช้require_once('class.php');
ในการโหลดของฉันclass.php
ในclass.phpของฉันฉันพบข้อผิดพลาดนี้:
ข้อผิดพลาดร้ายแรง: การใช้ $ this เมื่อไม่อยู่ในบริบทของวัตถุใน class.php บนบรรทัด ... (ในตัวอย่างนี้จะเป็น 11)
ตัวอย่างการเขียนclass.phpของฉัน:
class foobar {
public $foo;
public function __construct() {
global $foo;
$this->foo = $foo;
}
public function foobarfunc() {
return $this->foo();
}
public function foo() {
return $this->foo;
}
}
ในindex.phpของฉันฉันกำลังโหลดอาจเป็นfoobarfunc()
เช่นนี้:
foobar::foobarfunc();
แต่ยังสามารถ
$foobar = new foobar;
$foobar->foobarfunc();
เหตุใดจึงเกิดข้อผิดพลาด