我意识到,虽然我的大部分经验都是编写 PHP 应用程序,但我发现自己时不时会犯“初学者错误”。这是因为 PHP 是一种非常有机地发展的语言,因此有一些我不知道的特质、怪癖和陷阱。
我希望这个问题成为所有那些想了解 PHP 的陷阱和我们可能认为的规则的例外情况的人的 wiki。但请不要写一般性的回复,例如:
有些函数接收参数为$needle
, $haystack
,而有些则作为$haystack
, $needle
.
说出函数名称。你有我的一些答案作为例子。哦,对每个答案添加一个陷阱。这样我们就能看出哪一个是最受鄙视的(通过投票)。
我不想引发口水战,就直奔主题吧。如果您想写一些关于 PHP 的坏话,那么可以将其作为对相应答案的评论。
希望这个 wiki 对我们所有人、初学者和专家都有帮助。
Update:
在安德鲁·摩尔发表评论之后,我认为答案还应该包含针对该陷阱的解决方案或解决方法。
序列化处理 XML 结构的对象然后反序列化它们不会恢复原始 XML 结构:
$dom = new DOMDocument;
$dom->loadXML('<test/>');
$dom = serialize($dom);
$dom = unserialize($dom);
var_dump($dom->saveXML());
// $ Warning: DOMDocument::saveXML(): Couldn't fetch DOMDocument in ...
// $ NULL
对于 SimpleXML 对象也是如此。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)