2016-08-15 17:08:04 5261次浏览 3条回答 0 悬赏 10 金钱

yii中view中引用文件,使用render是否可以可以传递url中get的参数

  • 回答于 2016-08-15 17:16 举报

    可以的,第二个参数就是咯

    /**
    * @param string $view the view name.
    * @param array $params the parameters (name-value pairs) that should be made available in the view.These 
    * parameters will not be available in the layout.
    */
    public function render($view, $params = [])
        {
            $content = $this->getView()->render($view, $params, $this);
            return $this->renderContent($content);
        }
    
    4 条回复
    回复于 2016-08-15 17:19 回复

    我其实希望是加载一个页面内容 Url::to('site/_index',['id'=>1]);类似与这样的 我在视图中该怎么写?echo $this->render('site/_index',['id'=>1])

    回复于 2016-08-15 17:22 回复

    是的,

    回复于 2017-05-15 16:09 回复

    胡说这个是id放到视图上去了 但是url上并灭有 www.baidu.com?id=1 并没有后面的id=1

    回复于 2017-05-15 16:37 回复

    尴尬,当时可能不太清楚他是要改变url,render没有个功能,你可以使用redirect,

  • 回答于 2016-08-15 18:24 举报

    当然可以。

    在你view的内容被最终解析发送到客户端浏览器之前,都是存在于服务端的,都是被PHP管辖着的。

    而url中的参数作为$_GET这个超全局变量。在任何.php文件中都可以被访问到,即使是在view中。

    但是请注意:

    在权威指南->应用结构->视图->最佳实践中提到:

    应避免直接访问请求数据,如 $_GET, $_POST,这种应在控制器中执行, 如果需要请求数据,应由控制器推送到视图。

    所以取舍由楼主而定。

    祝你好运。

  • 回答于 2017-07-25 13:11 举报

    $this->actionParams=['type'=>$type]; 这个样子就可以搞定了

您需要登录后才可以回答。登录 | 立即注册
acking
总监

acking 上海

注册时间:2012-05-16
最后登录:2024-05-25
在线时长:65小时55分
  • 粉丝13
  • 金钱2565
  • 威望0
  • 积分3215

热门问题