NULL Fatal error: Uncaught Error: Function name must be a string in /path/to/file.php:...
Stack trace: #0 {main} thrown in /path/to/file.php on line ...
Code (PHP)
// ให้แก้เฉพาะ class
class MyClass1
{
function __construct($x = null)
{
var_dump($x);
}
}
// ห้ามแก้ไข
$obj = new MyClass1();
$obj(5);
2. จงแก้ constructor ให้ได้ output เป็น
Expected output
สวัสดี
buggy
Fatal error: Uncaught Error: Function name must be a string in /path/to/file.php:...
Stack trace: #0 {main} thrown in /path/to/file.php on line ...
Code (PHP)
class MyClass2
{
public $var;
public function __construct() {
$this->var = 42;
}
}
// ห้ามแก้ไข
$obj = new MyClass2();
echo ($obj->var)(), PHP_EOL;
3. แก้ bug ให้ได้ output เป็น
Expected output
เรียกเมธอดจากออปเจ็ก
เรียกเมธอดจากคลาสโดยตรง
buggy
Deprecated: Non-static method MyClass3::b()
should not be called statically in /path/to/file.php on line ...
Code (PHP)
class MyClass3
{
function a()
{
if (isset($this)) {
echo "เรียกเมธอดจากออปเจ็ก<br>";
}
}
function b()
{
if (!isset($this)) {
echo "เรียกเมธอดจากคลาสโดยตรง<br>";
}
}
}
// ห้ามแก้ไข
$a = new MyClass3();
$a->a();
MyClass3::b();