这可能是一个难以回答的基本问题,但我想知道有关使用PHP的如果相同 !==
与如果相等 {{}的性能问题1}}来控制流量。
考虑以下简单的PHP函数:
!=
从性能的角度来看,最好使用如果相同的(<?php
function test_json($json = NULL) {
if ($json != NULL) {
echo 'You passed some JSON.';
} else {
echo 'You failed to pass any JSON.';
}
}
?>
)来阻止PHP迭代变量类型,试图找到有效的比较吗?
我假设 !==
首先比较变量类型,如果失败,它会立即返回!==
?
我使用FALSE
因为PHP3几乎就像反射一样。现在我正在研究一些计算密集度更高的项目,因此需要考虑细微的性能问题。
当然欢迎关于流量控制优化的其他意见!
答案 0 :(得分:7)
我没有对松散的vs严格的比较运算符进行任何性能测试,但是对于你想要做的事情,我会推荐像
这样的东西。if (!is_null($json)) {
do_stuff()
}
有关http://www.php.net/manual/en/function.is-null.php
的is_null()
的更多信息
编辑:我在上面链接的php页面的评论中的注释显示,===
运算符比==
运算符略快,两者都比{{is_null()
运算符快。 1}}。然而,另一个注意事项指出“= = NULL和is_null之间的执行时间差小于250纳秒。去优化重要的东西。”我必须在那里同意。所有这一切,我建议你选择你认为最具可读性的。
答案 1 :(得分:0)
你可以在问之前写一个这样的测试代码;根据测试“使用”===“比is_null()快30倍。”