内核更新

This commit is contained in:
2016-07-22 14:33:13 +08:00
parent 265a9da552
commit c4ba53fd9e
10 changed files with 80 additions and 44 deletions

View File

@@ -1093,7 +1093,7 @@ class Route
foreach ($matches[1] as $name) {
if (strpos($name, '?')) {
$name = substr($name, 0, -1);
$replace[] = '((' . (isset($pattern[$name]) ? $pattern[$name] : '') . ')?)';
$replace[] = '(' . (isset($pattern[$name]) ? $pattern[$name] : '') . '?)';
} else {
$replace[] = '(' . (isset($pattern[$name]) ? $pattern[$name] : '') . ')';
}
@@ -1112,11 +1112,17 @@ class Route
if (0 === strpos($val, '[:')) {
// 可选参数
$val = substr($val, 1, -1);
$val = substr($val, 1, -1);
$optional = true;
} else {
$optional = false;
}
if (0 === strpos($val, ':')) {
// URL变量
$name = substr($val, 1);
if (!$optional && !isset($m1[$key])) {
return false;
}
if (isset($m1[$key]) && isset($pattern[$name]) && !preg_match('/^' . $pattern[$name] . '$/', $m1[$key])) {
// 检查变量规则
return false;