Example #1
0
 private static function run($uri, $controller, $vars = [])
 {
     $sltCt = Route::splitUri();
     $slt = Route::splitUri($uri);
     if (count($slt) != count($sltCt)) {
         return false;
     }
     for ($i = 0; $i < count($sltCt); $i++) {
         if (preg_match("/^{+.+}\$/", $slt[$i])) {
             $temp = substr($slt[$i], 1, -1);
             if (isset($vars[$temp]) && preg_match($vars[$temp], $sltCt[$i])) {
                 $vars[$temp] = $sltCt[$i];
             } else {
                 return false;
             }
         } else {
             if ($slt[$i] != $sltCt[$i]) {
                 return false;
             }
         }
     }
     Route::$status = Route::call($controller, $vars);
 }