要在 CodeIgniter 4(以下簡稱 CI4)中設定網址(路由)規則可以透過以下方法:

設定路由 URI

開啟 app/Config/Routes.php 檔案,加入以下規則:

$routes->get('store', 'Store::index');

 

如此在網址 你的網域/store 的時候,就會讀取 Store Controller index() 的內容:

class Store extends Controller
{
    public function index()
    {
        
    }
}

 

也可以帶入變數去對應內容,像是在 Routes.php 加上這個規則:

$routes->add('store/(:alphanum)', 'Store::store/$1');

 

就會去抓 Store Controller store() 的內容,可以依據帶入的參數顯示內容:

public function store($code)
    {
        echo $code;
    }

 

:alphanum 是可以限制的參數格式,預設的有以下這些:

置換符號 描述
(:any) 會比對此段落到 URI 末端的所有字符。有可能會包含多 URI 段落。
(:segment) 會比對任何除了被前斜線 (/)改變單一段落結構以外的字符。
(:num) 會比對任何數字。
(:alpha) 會比對任何由字母字符組合的字串。
(:alphanum) 會比對任何由字母字符組合或數字的字串,又或者任何兩者的組合。
(:hash) (:segment) 相同,但又可以被用來輕鬆檢視哪些路由使用了散列值的 id。

CI4 也提供了自訂規則的設定方法,可以參考官方文件看更詳細內容。

參考:
URI路由設定