- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在处理的项目包含类似于 call_user_func(_array) 的包装器,它在执行前进行一些检查。其中一项检查是 method_exists(如果提供的第一个参数是类的实例,第二个是方法名称)另一个是_callable。如果其中一项检查失败,该函数将抛出异常。
我的代码包含一个带有函数名称(setFoo、setBar 等)的数组和用于重载的 php 魔法函数 (__call),它处理某些变量(最好是某些数组元素)的设置、替换和删除。
问题:如果函数未定义,method_exists 将返回 false。
如果 __call 函数正确处理请求,我是否有机会获得 true?
最佳答案
__call
处理对不存在的方法的调用。 method_exists
是一种检查方法是否存在的内省(introspection)方法。
如何确定__call
来处理一个方法?我认为如果不处理您的请求,您必须在 __call
中手动抛出异常,并在代码中捕获异常,否则将使用 method_exists
。 BadMethodCallException
为此目的而存在。
关于PHP __call 与 method_exists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1505696/
我正在为我的 ajax Controller 编写一个“包罗万象”的方法。它被称为'ajax':P 这是它目前的样子 public function ajax($method = null) {
我正在尝试使用 php 函数 method_exists,但我需要检查该方法是否存在于对象的父类中。 所以: class Parent { public function myFunction
我正在处理的项目包含类似于 call_user_func(_array) 的包装器,它在执行前进行一些检查。其中一项检查是 method_exists(如果提供的第一个参数是类的实例,第二个是方法名称
本文实例讲述了php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法。分享给大家供大家参考,具体如下: php函数
在我的验证类中,我传递了不同的类对象,并且需要在这些类上调用一个方法。现在的问题是。我怎样才能确保该方法存在。 我应该像这样使用 instanceof 吗: ... ... if($passedObj
class parent{ function run($methodname) { echo method_exists(__CLASS__, $methodname);
从性能的角度我应该选择: $className = 'Foobar'; $methodName = 'method'; 这个 $Reflected = new ReflectionClass($cla
在我的应用程序代码中,我有一个 method_exists 检查来授权创建过程中的一些 Hook : // Note: $myClass is implementing a ListItemFacto
我收到这个错误: Fatal error: Uncaught Error: Function name must be a string in 对于这段代码: if (function_exists(
问题是我有两个 Laravel 项目正在处理 Laravel 5.1 和 5.3 并共享公共(public)数据库。这两个项目都放置在不同的子域上并运行。现在,在使用 queue 驱动程序作为两个项目
我是一名优秀的程序员,十分优秀!