我已经在这里阅读了相关话题
Function with same name but different signature in derived class.
我认为问题是一样的但在我的情况下它发生在PHP 5.4(在PHP 5.3中工作正常).具体配置是wamp 2.2,PHP 5.4.3.
我在日志中看不到任何错误,Chrome浏览器显示以下内容:“错误101(net :: ERR_CONNECTION_RESET):连接已重置.”
如果我在下面的示例中更改函数“init”的名称,一切正常.所以我知道该怎么做,但我想确保一般来说这是一个不好的做法,原因与相关问题中解释的相同.如果PHP显示错误会有所帮助,我不知道内部发生了什么.
有什么想法吗?
谢谢
class MyClass1 {
private function init(){
}
}
class MyClass2 extends MyClass1 {
private function init($params) {
}
}
$myinstance = new MyClass2();
最佳答案 我一直在寻找
the PHP changelog并找到了可能相关的东西.
5.4.4发行说明中的项目如下:
Fixed bug #61761 (‘Overriding’ a private static method with a different signature causes crash)
这听起来非常像你所看到的,特别是因为你指定你使用的是PHP 5.4.3.
根据我之前的评论,我建议升级到5.4的更新版本(最好是最新版本 – 目前为5.4.8).
希望有所帮助.