如何在CakePHP的视图文件中访问通过URL发送的参数?

时间:2008-10-24 19:26:01

标签: cakephp parameters

我是CakePHP的新手,但我一直认为他们的常见问题和指南无济于事。这很简单,我不能直接思考:

如何在视图文件中访问通过URL发送的参数?

示例:http://example.com/view/6

我如何获取该参数(“6”)并将其通过控制器循环到另一个视图页面?

如果这对于快速回答而言过于复杂,我如何在视图页面中引用6?这种情况下的6是我的数据库中的“Id”值,我需要将其设置为“父” -

由于

4 个答案:

答案 0 :(得分:16)

可以像这样检索参数

$this->params['pass']

在Action之后返回一个数组(以数字方式索引)的URL参数。

// URL: /posts/view/12/print/narrow
Array
(
    [0] => 12
    [1] => print
    [2] => narrow
)

答案 1 :(得分:5)

要访问视图中的参数,请查看$this->params

答案 2 :(得分:2)

您拥有的URL将调用ViewController的6()方法,该方法不是有效的方法名称。您可能需要使用您的路线来完成这项工作。

如果您不想配置路由,则需要URL中的控制器,如下所示:

http://example.com/thinger/view/6

将调用thingerControllerObject->view("6")。如果希望“/ view /”转到其他方法,请编辑路径。参见:

答案 3 :(得分:0)

在视图文件中使用以下代码:

$url=Router::url($this->here, true);
$url_arr=explode("/",$url);

要查看$url爆炸的内容,只需使用pr()打印,如下所示:

pr($url_arr);

它将打印关联数组,因此您可以访问通过URL发送的任何特定数量的参数。