【发布时间】:2009-07-09 17:39:23
【问题描述】:
我意识到,虽然我的大部分经验都在于编写 PHP 应用程序,但我发现自己时常犯“初学者错误”。这是因为 PHP 是一种非常有机地发展的语言,因此有一些我不知道的特质、怪癖和陷阱。
我希望这个问题成为所有想要了解 PHP 的陷阱和例外的人的 wiki,我们可能认为这是规则。但请不要写出一般性的回复,例如:
有些函数接收参数为
$needle,$haystack,而有些是$haystack,$needle.
告诉函数名称。你有一些我的答案作为例子。哦,每个答案添加一个陷阱。这样我们就可以(通过投票)看看哪一个是最被鄙视的。
我不想引发一场激烈的战争,保持主题。如果你想写一些关于 PHP 的不好的东西,那就把它作为对相应答案的评论。
希望这个 wiki 对我们所有人,初学者和专家都有帮助。
更新:
在 Andrew Moore 发表评论后,我认为答案还应该包含针对该陷阱的解决方案或解决方法。
【问题讨论】:
-
从 php 5.3.3 开始,如果使用命名空间,则不能再使用类名作为构造函数名。您必须使用“__construct”。不会发出警告,但调用“new MyClass”不会执行构造函数中的代码。为一个不错的陷阱万岁。
标签: php