>백엔드 개발 >PHP 튜토리얼 >yii框架两点初级疑惑

yii框架两点初级疑惑

WBOY
WBOY원래의
2016-06-06 20:39:55910검색

1 比如fronted/web/index.php 展现的内容是怎么确定的(index本身不是展现页面的)
2 对于一个app,常用到主页返回,那么gethomeurl在哪里设置的呢?

回复内容:

1 比如fronted/web/index.php 展现的内容是怎么确定的(index本身不是展现页面的)
2 对于一个app,常用到主页返回,那么gethomeurl在哪里设置的呢?

本来想根据源码分析 时间有限太特么啰嗦了
直接进入 common/config/main.php

<code>return [
    //应用的默认路由 goHome默认会跳转到这里
    'defaultRoute' => 'controller/action'

    还有一种就是配置系统urlManeger组件
    ‘components’ => [
        'urlManager' => [
            //这个baseUrl 最终也会决定homeUrl的去处相当于给当前应用指定一个域名然后真个应用的                                路由都基于这个域名跳转
            'baseUrl' => 'http://www.test.com',
            'class' => 'yii\web\UrlManager',
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            //'suffix' => 'path',
        ],
    ]

]
</code>

  1. structure-controllers
  2. $controllerObj->redirect(); $controllerObj->goHome(); 示例中的用法, 其他参考 api

  1. 在Yii中,默认的url应该是这样的: http://域名/index.php?r=controllerName/actionName&参数1=值1&参数2=值2
    对于fronted/web/index.php,目测,frontend应该是网站前台,即frontend目录下有一个web目录,web目录里有index.php文件,这个文件时前台的唯一入口。

  2. 返回主页不就是在控制内 $this->redirect('/'); 翻译出来就是http://域名/这个网址吗?

PS:对第一点补充一下,web目录应该是web server的根目录,比如你要访问fooController下的actionTest()方法,你的url应该这样写:http://域名/index.php?r=foo/test

第一个问题不是很明白,第二个问题:返回主页可以在控制器里使用$this->goHome();

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.