/** * * 匹配一个路由 * @param string $pattern * @param string $url * @return bool * * @codephp * * $pattern = '(:let)/(:let)/(:any)'; * $url = '/main/index'; * self::match($pattern, $url); * * @endcode * */ public static function match($pattern, $url) { $key = str_replace(array(':any', ':let', ':num', ':ln'), array('.*', '[a-zA-Z]+', '[0-9]+', '[a-zA-Z0-9]+'), $pattern); if (preg_match("#^{$key}\$#", $url, $vars)) { self::$matched_pattern = $key; return $vars; } return false; }