PHP类中,只有 public 属性的方法可以通过外部调用,而我正在开发的 VgotFaster 若是通过 URI 访问控制器中的私有方法,便会出现错误,在网上找了半天也没有一个判断类中方法是什么属性的函数,在查看了手册后,发现我们可以通过 get_class_methods() 来得到相同的效果,get_class_methods() 是获取类中方法列表的数组,而且只获取或者是默认只获取公开的方法名称,那么我们就可以通过 in_array() 来判断指定的方法是否存在或者是否公开了。
例:
- class TestClasss {
- private function hello(){}
- public world(){}
- }
- if(in_array('hello',get_class_methods(TestClass))) {
- echo '访问正常';
- } else {
- echo '无权访问';
- }
评论 共有 0 条评论
暂无评论,快发表你的评论吧。