如果我像这样定义一个类LOG
:
class LOG {
static public function LOG(){
return;
}
}
echo 1;
当我运行它时,它什么也没显示。如果我注释掉这样的方法:
class LOG {
/*static public function LOG(){
return;
}*/
}
echo 1;
它将显示" 1"在浏览器中。为什么第一个代码段不起作用?
答案 0 :(得分:1)
当您启用错误报告时,您将收到此错误:
致命错误:构造函数LOG :: LOG()不能是静态的
删除函数前面的static
关键字将起作用:
class LOG{
public function LOG(){
return;
}
}
在PHP中,当你创建一个这样的类时:
class LOG{
static public function LOG(){
return;
}
}
(具有与该类相同的命名功能)
它将该函数作为__construct()
方法运行。
由于你在那里的return;
陈述,它没有达到回声。
如果你发表评论,它应该有效:
class LOG{
static public function LOG(){
// return;
echo 'inside class';
}
}
但我不认为这是错误,必须有别的东西。打开错误报告,如果有任何错误,请告知我们。
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);