PHP Strict standards: Redefining already defined constructor for class问题

本文探讨了PHP4与PHP5及更高版本中构造函数的不同写法。在PHP4中,构造函数与类同名;而PHP5引入了__construct()作为标准构造函数,但仍兼容旧的构造函数方式。需要注意的是,在同一类中定义新旧两种构造函数时的顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个问题是PHP高低版本中,对于类的构造函数写法不一样造成的。

在PHP4中,类的构造函数是一个和类名同名的函数作为构造函数的,

而在PHP5以后,用__construct()作为构造函数,但同时也支持PHP4中用类同名的构造函数方法,

同时使用的时候,请注意 同名函数不能放在__construct()构造函数前面。

class test

{

    function __construct()  //此构造函数须写在前
    {
       //php代码
    }

    function test()  //此函数须写在后

    {

    //php代码

    }

}

如果把 同名函数写在前面,就会出现如下提示:

Strict standards: Redefining already defined constructor for class....






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值