我目前正在學習codeigniter,但我遇到了一些路由問題。我的路線文件如下:CodeIgniter參數在路由中間
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
$route['images/(:num)/upload/'] = 'image/upload/$1';
$route['images/(:num)'] = 'image/index/$1';
$route['yoyo/(:num)'] = 'yoyo/view/$1';
$route['default_controller'] = 'yoyo';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
我的問題是與第一條路線;如果沒有將(:num)移動到路徑的末尾,我無法使其工作。基於我瀏覽過stackoverflow後看到的其他路線,它會得到這樣的效果。有任何想法嗎?
所以,如果我添加了跟蹤路由,而不是僅僅是它的工作原理清楚:
$route['images/upload/(:num)/'] = 'image/upload/$1';
您應該在更高的地方保留保留的路線。查看[docs](https://codeigniter.com/userguide3/general/routing.html#reserved-routes)(標記爲紅色)的最後一個引用:「保留的路由必須位於任何通配符或正則表達式路由之前。」 。 – Tpojka
好點。沒有發現;我會銘記在心。 –