代码之家  ›  专栏  ›  技术社区  ›  scrot

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

  •  6
  • scrot  · 技术社区  · 17 年前

    我是CakePHP的新手,但我一直在看他们的常见问题解答和指南,但都没有用。这太简单了,我一定不能直截了当地想:

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

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

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

    如果这太复杂了,无法快速回答,我该如何在视图页面本身中引用6?在这种情况下,6是我数据库中的“Id”值,我需要将其设置为“父级”-

    谢谢

    4 回复  |  直到 13 年前
        1
  •  16
  •   Nikolay Ruban    16 年前

    参数可以这样检索

    $this->params['pass']
    

    在Action之后返回URL参数的数组(数字索引)。

    // URL: /posts/view/12/print/narrow
    Array
    (
        [0] => 12
        [1] => print
        [2] => narrow
    )
    
        2
  •  5
  •   neilcrookes    17 年前

    要访问您的 看法 拜访 $this->params

        3
  •  2
  •   adriaroca ADmad    12 年前

    您所拥有的URL将调用ViewController的6()方法,该方法不是有效的方法名称。你可能需要调整你的路线才能做到这一点。

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

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

    这将调用 thingerControllerObject->view("6") 。如果您想“/view/”转到其他方法,请编辑路线。请参阅:

        4
  •  0
  •   sabin    11 年前

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

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

    查看以下内容 $url 已爆炸,只需使用pr()按如下方式打印即可:

    pr($url_arr);
    

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