如何获取当前的控制器及方法
本帖最后由 ekingluo 于 2011-9-22 10:26 编辑我刚在论坛里面搜过了,以前有人提过同样的问题,回答一般都是查看uri类,也就是获取uri的segments片段,一个问题是:如果url是一般模式,uri类也可以正常解析成片段吗,这个我可以自己试试……还没试……还有一个问题是:我的控制器中有子文件夹,也有的没有,可是我要在所有的控制器中都要获取当前的控制器和方法,这样我在每个控制器中要获取的方法又不一样了。我研究的一个方法是:
$RT= & load_class('Router');
$controller=$RT->fetch_class;
$method=$RT->fetch_method;
有没有直接可以获取到的方法?不用像这样再加载router类;
我要解决的问题是一个简单的权限判断,如果用户没有访问此控制器的权限就提示无权限的,新手请赐教,我想要一个好的解决办法。 本帖最后由 jeongee 于 2011-9-22 10:47 编辑
不管带不带文件夹,不管用没用到路由,不管。。。
在ci中用下面的肯定获取到的是控制器和方法名
那就是:
controller:$this->uri->rsegment(1);
method:$this->uri->rsegment(2);
jeongee 发表于 2011-9-22 10:47 static/image/common/back.gif
不管带不带文件夹,不管用没用到路由,不管。。。
在ci中用下面的肯定获取到的是控制器和方法名
那就是:
我现在url是http://localhost/codeIgniter/index.php?d=admin&c=login&m=index;
配置:$config['enable_query_strings'] = TRUE;
无法获取$this->uri->rsegments,$this->uri->rsegments, ekingluo 发表于 2011-9-22 10:56 static/image/common/back.gif
我现在url是http://localhost/codeIgniter/index.php?d=admin&c=login&m=index;
配置:$config['enable_ ...
这个我真没试过,从没用过这种方式的路由,用ci原因之1就是冲着URI分段的,呵呵
我马上测试以下 jeongee 发表于 2011-9-22 11:00 static/image/common/back.gif
这个我真没试过,从没用过这种方式的路由,用ci原因之1就是冲着URI分段的,呵呵
我马上测试以下 ...
嗯,还是感谢,我先用笨方法做了,如果有好的,以后再改 ekingluo 发表于 2011-9-22 11:03 static/image/common/back.gif
嗯,还是感谢,我先用笨方法做了,如果有好的,以后再改
初步测试
使用$config['enable_query_strings'] = TRUE;这种方式后,ci的路由等都没用了,所以这种方式下
controller = $this->input->get('c') ? $this->input->get('c') : '你设置的默认控制器' ;
method = $this->input->get('m') ? $this->input->get('m') : 'index' ;
jeongee 发表于 2011-9-22 11:08 static/image/common/back.gif
初步测试
使用$config['enable_query_strings'] = TRUE;这种方式后,ci的路由等都没用了,所以这种方式下 ...
谢谢,马上使用看看 或者是可以透過 $this->input->get_post() 他會先取 post 後取 get 資料
http://codeigniter.org.tw/user_guide/libraries/input.html jeongee 发表于 2011-9-22 10:47 static/image/common/back.gif
不管带不带文件夹,不管用没用到路由,不管。。。
在ci中用下面的肯定获取到的是控制器和方法名
那就是:
如果有目录了,就不行了吧 absola 发表于 2012-8-26 01:38 static/image/common/back.gif
如果有目录了,就不行了吧
可行
页:
[1]
2