不同点:
isset是语句,是PHP语言结构
is_null是函数,可以接收参数的函数
举例一、
<?php
isset($laruence);
//OK
is_null($laruence);
//PHP Notice: Undefined variable: laruence
?>
举例二、
<?php
is_null(intval("0x45"));
//OK
isset(intval("0x45"));
//PHP Fatal error: Can't use function return value in write context
is_null(NULL);
//OK
isset(NULL);
//PHP Parse error: syntax error
?>
相同点:
对于可执行内容来说,判断结果完全相反
isset(变量) === (!is_null(变量))
用法上建议:
isset 用作判断变量是否被赋值(声明)
is_null 用作判断变量是否为null
补充:
isset的执行效率比is_null高很多很多,在各自的位置上完成各自的功能,以防出现不可预知的错误。