解析php函数method_exists()与is_callable()的区别
来源:互联网 发布:众银家苹果下载软件 编辑:程序博客网 时间:2024/06/08 06:12
php函数method_exists() 与is_callable()的区别在哪?在php面相对象设计过程中,往往我们需要在调用某一个方法是否属于某一个类的时候做出判断,常用的方法有 method_exists()和is_callable(),相比之下,is_callable()函数要高级一些,它接受字符串变量形式的方法名作为 第一个参数,如果类方法存在并且可以调用,则返回true。如果要检测类中的方法是否能被调用,可以给函数传递一个数组而不是类的方法名作为参数。数组必须包含对象或类名,以将其作为它的第一个元素,要检查的方法名则作为第二个元素。如果该方法在类中存在,函数返回true。
代码示例:
if ( is_callable( array( $obj, $method ) ) )
{
/*要操作的代码段*/
}
is_callable()可以加收另外一个参数:一个布尔值,如果将该参数设置为true,函数仅仅检查给定的方法或函数名称的语法是否正确,而不检查其是否真正存在。method_exists()函数的参数为一个对象(或类名)和一个方法名,如果给定方法在对象的类中存在,则返回true
代码示例:
if ( method_exists( $obj, $method ) )
{
/*要操作的代码段*/
}
php函数method_exists()与is_callable()的区别在于在php5中,一个方法存在并不意味着它就可以被调用。对于 private,protected和public类型的方法,method_exits()会返回true,但是is_callable()会检查存在其是否可以访问,如果是private,protected类型的,它会返回false。
代码示例:
复制代码代码如下:
if ( is_callable( array( $obj, $method ) ) )
{
/*要操作的代码段*/
}
is_callable()可以加收另外一个参数:一个布尔值,如果将该参数设置为true,函数仅仅检查给定的方法或函数名称的语法是否正确,而不检查其是否真正存在。method_exists()函数的参数为一个对象(或类名)和一个方法名,如果给定方法在对象的类中存在,则返回true
代码示例:
复制代码代码如下:
if ( method_exists( $obj, $method ) )
{
/*要操作的代码段*/
}
php函数method_exists()与is_callable()的区别在于在php5中,一个方法存在并不意味着它就可以被调用。对于 private,protected和public类型的方法,method_exits()会返回true,但是is_callable()会检查存在其是否可以访问,如果是private,protected类型的,它会返回false。
0 0
- 解析php函数method_exists()与is_callable()的区别
- 解析php函数method_exists()与is_callable()的区别
- php函数method_exists()与is_callable()的区别
- php函数method_exists()与is_callable()的区别
- php函数method_exists()与is_callable()的区别
- php 函数method_exists()与is_callable()的区别
- php函数method_exists()与is_callable()的区别
- 【PHP】function_exists , method_exists 与 is_callable的区别
- 【PHP】is_callable()与method_exists()函数
- PHP is_callable()与method_exists()区别 【转】
- function_exists 、 method_exists 和 is_callable 的区别
- php is_callable method_exists
- method_exists 和 is_callable区别
- php 中 function_exists 、 method_exists 和 is_callable
- PHP中is_callable()函数的用法详解
- PHP中is_callable()函数的用法详解
- PHP中的is_callable函数
- php中is_callable函数
- 面试:这个时候、这样谈薪成功率最高!
- OpenCV 之Mat类详解
- 变量之间的差异是显著的.
- CopyOnWrite
- Mysql导入CSV文件
- 解析php函数method_exists()与is_callable()的区别
- 把数据库的文件导出EXCEL表格
- 专业名词
- 264. Ugly Number II 类别:动态规划 难度:medium
- pod升级以及更新不到最新的第三方库解决方法
- LeetCode OJ-3.Longest Substring Without Repeating Characters(最长无重复子串)
- JavaScript笔记(1)
- android 把socket 提到JNI层实现
- Nginx学习总结(5)——Nginx基本配置备忘