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

时间:2014-09-03 06:44:49

标签: php codeigniter routes helper

所以我有一个codeigniter帮助程序,用于确定已签名的请求是否来自移动设备。 因此,当有移动请求时,我希望我的网址路由到不同的控制器。

例如

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";

提前感谢!

1 个答案:

答案 0 :(得分:5)

简而言之,您不能使用自动加载的帮助程序,也不能在帮助程序中使用$ this。与库不同,helper不是类,因此您无法获得CodeIgniter的实例。

但是,要解决您的问题,您可以包含帮助文件。

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

所以因为已经包含了你现在可以使用这个帮助器的函数,比如get_request()等。

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";

然后你现在可以使用它。