PHP call_user_func替代项
|
我正在PHP中寻找与其功能
call_user_func
相当的东西。
我在使用此功能时遇到的问题是它不会进入“对象模式”。通过这个,我的意思是我不能在课堂上使用$this
和其他东西,所以几乎用两个词来表达:不是oop。
我基本上需要这个,因为我正在处理所请求的url,对其进行解析,然后查看一切是否正常等等,然后执行以下几行:
call_user_func(array(ucfirst( $controller . \"Controller\" ), \'_initAction\'), $param);
call_user_func(array(ucfirst( $controller . \"Controller\" ), $action . \'Action\'), $param);
因为我想动态调用ѭ3及其动作。但是我不能在$action
方法中使用$this
,因为它不是OOP。
这是我收到的消息:
Fatal error: Using $this when not in object context in E:\\htdocs\\wit\\application\\controller\\InformationController.php on line 6
所以我希望有人能帮助我。
您能否告诉我我是否以错误的方式解决了这个问题?
PS:请不要向我推荐任何处理此问题的MVC框架。我喜欢Zend,但有时它太重了:((我为此需要一个轻量级的设置。
没有找到相关结果
已邀请:
4 个回复
艰管垮淮
其实你甚至可以使用
敦肌
呢率篓舍烫
调用对象方法。您可以这样做,只需将对象作为第一个索引传递数组,并将方法的字符串名称作为第二个索引传递数组。 例如,假设您将控制器\“ IndexController \”与\“ index \”作为操作/方法。
替秀宝
因此,这就是我的解决方案。它基于@AlexAtNet解决方案和@Sean向我推荐的胶水部分