老師你好你影片中示範的位址www.tp5.com/hello/aaa/dddd-33-ccc-444-eee-5555.html 這樣顯示 但是修改設定檔分隔符號之後顯示的位址卻不是你顏色的位址而是www.tp5.com/hello-aaa-dddd-33-ccc-444-eee-5555.html 點選提示hello模組未找到
這是什麼原因
天蓬老师2018-10-11 10:01:24
你的問答涉及路由中的組合變數規則:
Route::get('item-<name>-<id>', 'product/detail') ->pattern(['name' => '\w+', 'id' => '\d+']);
組合變數的優勢是路由規則中沒有固定的分隔符,可以隨意組合需要的變數規則和分割符,例如路由規則改成如下一樣可以支援:
Route::get('item<name><id>', 'product/detail') ->pattern(['name' => '[a-zA-Z]+', 'id' => '\d+']);Route::get('item@<name>-<id>', 'product/detail') ->pattern(['name' => '\w+', 'id' => '\d+']);
以上官網對變數規則的描述,如果你的變數較多,為了產生一個對搜尋引擎友善的URL位址,可以使用組合變數規則來美化你的URL位址,但會損失一定的執行效率, 如果你的操作沒有參數或有預設參數時,要注意規則的變化,防止失效~~