一个strict类型的错误为什么“关”不掉?
<br />//我当前是php5.3版<br />//按php.ini中的设置(error_reporting = E_ALL | E_STRICT),<br />//本页会显示2个strict类型的错误(见后面代码注释)<br />//ini_set("error_reporting",E_ALL); //写这个,只能关闭2号错误提示<br />//ini_set("error_reporting",E_NOTICE); //写这个也只能关闭2号错误提示<br />//ini_set("display_errors", 0); //这个还是只能关闭2号错误提示<br /><br />//问题就是:为什么子类跟父类同名但不同参的这个strict错误,为什么关不掉? <br /><br />class Person{<br /> public $name;<br /> public $age;<br /> private function f1($x){<br /> echo "Person中x = " . $x;<br /> }<br />}<br />class Teacher extends Person{<br /> public $depart; //所属部门<br /> public function f1($x,$y){ //这里方法参数跟父类同名方法不同,<br /> //因此报一个strict类型的错(1号)<br /> echo "Person中x = " . $x , ", y=" . $y ;<br /> }<br />}<br />$o1 = new Teacher();<br />$o1->f1(1,2);<br />$o1::f1(3,4); //这里使用静态方式调用非静态方法,也报一个strict错(2号)<br />
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号