找回密码
 注册

[PHP] Strict Standards: Redefining already defined constructor for class ...

php 发表于 2015/4/6 22:14 | 显示全部楼层 |阅读模式
Strict Standards: Redefining already defined constructor for class a in F:\Web\www\local\index.php on line 6
版本较新的PHP,在定义类的时候,如果同时有类方法的名字和类的名字相同,并且在类的内部定义了__construct这个构造函数,就会报“Strict Standards: Redefining already defined constructor”。

在旧版PHP中,为了照顾老程序员,支持两种构造函数的写法,一种就是将构造函数的函数名称命名为类的名称,另一种方法就是使用_construct作为构造函数的函数名称,使用__construct关键字,是最新的构造函数语法,使用起来也更简便,所以平时写代码最好不要再使用第一种,那是PHP4时代的产物。

而且,从 PHP 5.3.3 开始,在命名空间中,和类同名的方法不再作为构造函数,这一改变不影响不在命名空间中的类。

手机版|轻松E站

轻松E站

快速回复 返回顶部 返回列表