Php: variables:哪个更快:is_int($var)或($var!==false)或(!($var===fa


php: variants: which one is quicker: is_int($var) or ($var!==false) or (!($var===false))?

我正在编写一个函数,其中有很多is_int($var)比较。但是$var只能是两种类型:整数或布尔值false。

我想知道哪个函数是最快的:

if (is_int($var)) {}

if ($var!==false) {}

if (!($var===false)) {}

任何想法?

显然答案是

if ($var!==false) {}

比function快,一个布尔表达式比两个布尔表达式快。

和一个布尔表达式比两个布尔表达式快。

当涉及到基准测试时,永远不要做假设。我测量:

  • if ($var!==false) {}与int: 1.417324
  • if ($var!==false) {} with boolean: 1.432197
  • if (!($var===false)) {}与int: 1.414805
  • if (!($var===false)) {}带布尔值:1.421146