1

我刚刚安装了最后一个 1.7 版本的 Fuelphp 并试图在没有路由的情况下玩,但有点卡住了

做了什么:

在“用户空间”控制器中创建“特殊”操作

public function action_special($a = 'empty')
{
    var_dump($a);
    die();
}

并为其路由

'test(/:any)?' => 'userspace/special/$1'

但问题是如果localhost/test返回

string(5) "empty"

所以localhost/test/1localhost/test/qwerty返回

string(0) ""

但完整路径localhost/userspace/special/qwerty返回

string(6) "qwerty"

所以不知何故,我们的“特殊”方法无法从路由中获取参数。

4

1 回答 1

2

因为我们使用的是正则表达式,所以路由很强大,但有时会令人困惑。正则表达式应该是这样的:

'something(/(:any))?' => 'something/index/$2',

(组)被捕获,但是 :any 本身没有被捕获,你需要一个额外的(组),就像上面的例子一样。因为这是第二组,我们将$2进行路线翻译。

于 2013-10-26T17:26:53.017 回答