is_callable()函数和method_exists()

检测参数是否为合法的可调

one('b','two');//b类中有two方法,输出yes
$request = $a->one('b','');//b类中有two方法,输出no
$request = $a->two('b','two');//b类中有two方法,输出yes
$request = $a->two('b','');//b类中有two方法,输出no

php函数method_exists()与is_callable()的区别在于在php5中,一个方法存在并不意味着它就可以被调用。对于 private,protected和public类型的方法,method_exits()会返回true,但是is_callable()会检查存在其是否可以访问,如果是private,protected类型的,它会返回false。

你可能感兴趣的:(is_callable()函数和method_exists())