0

これには 2 つの方法があり、オーバーヘッドが少なく効率的なスタイルを探しています。誰がどれが一番いいのか知っていますか? このプロジェクトには多くのリンクがあり、大きな配列を取得する可能性があります。

1

foreach($this->routes as $pattern => $action) {

    if($pattern === $uri) {
        return $action;
    }

    if(preg_match('#^' . $pattern . '$#', $uri, $matched)) {
        return $action;
    }

}

2

if(array_key_exists($uri, $routes)) {
    return $routes[$uri];
}

foreach($this->routes as $pattern => $action) {
    if(preg_match('#^' . $pattern . '$#', $uri, $matched)) {
        return $action;
    }
}
4

1 に答える 1