【php】构造函数与类名同名函数

本文探讨了PHP中构造函数的变化历程,特别是在PHP4之后引入的__construct()方法,并讨论了其与旧构造函数名称同名时的行为差异。文章还提到了命名空间的影响以及类和方法名大小写敏感性的问题。

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

java和c++++的构造函数都是与类名同名,php早期版本也是,但是好像php4之后,就用__construct代替了,反正我入php坑的时候就已经>=php4版本了;

当前版本: php5.6  ,假设定义了 Txx类

1.当类里面同时存在__construct() 和 Txx() 时

    Txx()方法将被视为普通的类方法

2.当类里面有Txx() 而 未定义 __construct()时,且php文件未定义命名空间时

    Txx()将被当做构造方法使用(但是php会出现警告,提示以后可能不能这么用)

3.当类里面有Txx() 而 未定义 __construct()时,且php文件定义了命名空间时

    Txx()方法将被视为普通的类方法

 

Tips:php类名与方法名不区分大小写

如果同时存在 Sb类和sb类会报定义不明确的错误,类里面同时存在Sb()方法和sb方法时同理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值