改进Route类的复合变量检测 如果没有定义变量规则 默认为 \w+

This commit is contained in:
thinkphp
2016-08-05 18:32:12 +08:00
parent 700dc44d4f
commit 8673d52548

View File

@@ -1204,9 +1204,9 @@ 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] : '\w+') . '?)';
} else {
$replace[] = '(' . (isset($pattern[$name]) ? $pattern[$name] : '') . ')';
$replace[] = '(' . (isset($pattern[$name]) ? $pattern[$name] : '\w+') . ')';
}
$value[] = $name;
}