'is_array'和'\ is_array'之间的区别

时间:2013-11-26 19:40:05

标签: php

if(is_arrray($arr)
{
    //code...
}

 if(\is_array($arr)
 {
     //code..
 }

这两个条件给出了相同的结果。但是,确切地说,有什么区别?

1 个答案:

答案 0 :(得分:9)

使用命名空间时,可以覆盖命名空间中的本地函数,当您使用\调用全局函数时。

您可以在namespaces.fallback

中详细了解

这是从php.net中提取的一个小例子:

<?php
namespace A\B\C;

const E_ERROR = 45;
function strlen($str)
{
    return \strlen($str) - 1;
}

echo E_ERROR, "\n"; // prints "45"
echo INI_ALL, "\n"; // prints "7" - falls back to global INI_ALL

echo strlen('hi'), "\n"; // prints "1"
if (is_array('hi')) { // prints "is not array"
    echo "is array\n";
} else {
    echo "is not array\n";
}
?>