CakePHP - Html-> link - 为什么使用controller =>和action =>而不仅仅是控制器/动作

时间:2011-03-30 19:39:32

标签: php cakephp cakephp-1.3

为什么:

echo $this->Html->link('Add a User', array('controller'=>'users', 'action'=>'add'));

而不仅仅是:

echo $this->Html->link('Add a User', 'users/add');

2 个答案:

答案 0 :(得分:8)

第二个示例将始终生成“users / add”的网址。第一个提供了使用反向路由来形成定制URL的可能性,这是由routes.php文件中的规则定义的。

在实践中,我经常发现第一种和第二种风格没有区别。但是,如果您以后决定对路线进行更改,您可能会发现第一次做事情从长远来看可以节省时间,因此您不必返回并更改每个链接的路径...

答案 1 :(得分:0)

供将来参考...使用第一个,' cos第二个是相对于位置。例如,如果您在www.example.com/post中,最终的网址将是:

#1 www.example.com/post/users/add #2 www.example.com/users/add

抱歉英语不好:P