php判断函数,类,类方法是否存在

做php开发中,如果遇到自己不能修改服务器的相关配置也不能知道服务器某些功能是否开启的情况下,直接使用某些特殊的函数会导致程序报错,比如curl_init这种系统函数。当服务器未开启curl相关服务的时候,直接使用curl系列函数会报Call to undefined function curl_init()……这样的错误。
那么对于出现这种情况该如何办呢?很多事情不只是有一种办法的,如果某些方法不行,我们还可以使用另外的方法。这里我们就需要涉及到判断某个方法是否存在的问题了,如果存在该方法则使用该方法,如果不存在该方法则使用另外的方法。
这里对于如何判断一个函数,类以及类中的方法是否存在做了一个整理:

1、php判断系统函数或自己写的函数是否存在,bool function_exists ( string $function_name ) 判断函数是否已经定义,例如:

if(function_exists('curl_init')){
 echo "z6.net.cn";
}else{
 echo 'not function curl_init';
}

2、php判断类是否存在bool class_exists ( string $class_name [, bool $autoload = true ] ) 检查一个类是否已经定义,一定以返回true,否则返回false,例如:

if(class_exists('MySQL'))$myclass=new MySQL();

3、php判断类里面的某个方法是否已经定义, bool method_exists ( mixed $object , string $method_name ) 检查类的方法是否存在,例如:

$directory=new Directory;
if(!method_exists($directory,'read'))echo '未定义read方法!';

未经允许不得转载:任鹏个人博客 » php判断函数,类,类方法是否存在

赞 (0) 打赏

评论 0

取消
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏