因为我想分离系统的前端和后端。我已经在控制器内部创建了2个文件夹作为前端和后端
下面是我的控制器文件夹的结构
controller --frontend ---store.php ---processing.php ---profile.php ---authenticate.php ---register.php --backend ---authenticate.php ---stats.php ---users.php ---property_manage.php ---register.php
我可以通过使用以下功能
frontend/store/add frontend/store/manage ...... backend/stats/sales backend/stats/payments .....
但我想从网址中删除前端和后端段。
我检查了codeigniter中的路由功能,但据我所知,我需要分别指定每个路由。由于我大约有12个控制器,每个控制器都具有大约10 -15个功能,因此我可能必须指定该路由的每个功能。
有没有其他有效的方法可以实现使用路由或其他任何方法?(不使用任何htaccess)
做这个:
$route['store/(:any)'] = 'frontend/store/$1'; $route['processing/(:any)'] = 'frontend/processing/$1'; $route['profile/(:any)'] = 'frontend/profile/$1';
后端相同:
$route['backend/(:any)'] = 'backend/authenticate/$1';
您不必为控制器的每个功能在routes.php中创建每个规则,而是如上所述,每个控制器一个规则就足够了。
URI路由:CodeIgniter用户指南
$1表示第一个表达式,这里(:any)是表达式,您可以在每个规则上有多个表达式,而表达式则表示为$1,$2以此类推。
$1
(:any)
$2
同样,(:num)将匹配仅包含数字的段,(:any)将匹配包含任何字符的段,(\d+)将匹配任何数字,([a-z]+)将匹配任何字母文本。
(:num)
(\d+)
([a-z]+)