dongsuyou6938 2014-09-03 06:44
浏览 43
已采纳

我可以在codeigniter路由中使用帮助器吗?

So I have a codeigniter helper that determines wether the signed request is from mobile or not. and so I would like that my url routes to different controllers when there is mobile request.

for example

if (get_request() === 'mobile')
$route['u/a/(:any)'] = "mobile/usr/main_controller/game_detail/$1";
else
$route['u/a/(:any)'] = "pc/usr/main_controller/game_detail/$1";

thanks in advance!

  • 写回答

1条回答 默认 最新

  • douxian1892 2014-09-03 07:28
    关注

    In short you can't use autloaded helpers and you can't use $this inside a helper. Unlike libraries helpers aren't classes so you can't get CodeIgniter's instance.

    However to solve your problem you can however include the helper file.

    require_once( APPPATH .'helpers/your_helper.php');
    

    and so because its already included you can now use this helper's function like get_request() etc..

    if (get_request() === 'mobile')
    $route['u/a/(:any)'] = "mobile/usr/main_controller/game_detail/$1";
    else
    $route['u/a/(:any)'] = "pc/usr/main_controller/game_detail/$1";
    

    and then you can use this now.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?