Yii路径总结

如果是 // 就会默认去调

protected/views/layouts  

,//代表 绝对路径

其实 就是 绝对和相对的关系 /代表相对路径,如module/user下的layout

用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找。
如:
$layout='//layouts/column1';
 

Yii 中广泛的使用了路径别名。路径别名关联于一个目录或文件的路径。它以点号语法指定,类似于广泛使用的名字空间(namespace)格式:

ootAlias.path.to.target

1. Root Alias 

为方便起见,Yii 预定义了以下几个根别名:

  • system: 表示 Yii 框架目录;
  • zii: 表示 Zii 库 目录;
  • application: 表示应用的 基础目录
  • webroot: 表示 入口脚本 文件所在的目录。此别名从版本 1.0.3 开始有效。
  • ext: 表示包含了所有第三方 扩展 的目录。此别名从版本 1.0.8 开始有效。

额外的,如果应用使用了 模块, (Yii) 也为每个模块ID定义了根别名,指向相应模块的跟目录。 此功能从版本 1.0.3 起有效。

通过使用 YiiBase::getPathOfAlias(), 别名可以被翻译为其相应的路径。 例如, system.web.CController 会被翻译为 yii/framework/web/CController

 YII framework路径:  Yii::getFrameworkPath()   
  
 {full URL} :http://localhost/yii_lab/index.php?r=lab/urlBoyLeeTest   
 
 protected/venders目录 :Yii::import('application.venders.*');   
 
 protected/config/main.php说明 :
'import'=>array(  
        ......  
        'application.venders.*',  
    ),   
插入meta信息:  
Yii::app()->clientScript->registerMetaTag('keywords','关键字');
Yii::app()->clientScript->registerMetaTag('description','一些描述');
Yii::app()->clientScript->registerMetaTag('author','作者');  
 
Yii::app()->clientScript->registerLinkTag('alternate','application/rss+xml',$this->createUrl('/feed'));     //<link rel="alternate" type="application/rss+xml" href="http://www.dreamdu.com/feed/" />
 
 如何在控制器添加CSS文件或JavaScript文件:  
Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/my.css');
Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/css/my.js');
<?php echo $this->module->assetsUrl; ?>/css/main.css     
 
调用YII框架中 jquery:Yii::app()->clientScript->registerCoreScript('jquery');    
  
framework/web/js/source的js,其中registerCoreScript key调用的文件在framework/web/js/packages.php列表中可以查看
 
 在view中得到当前controller的ID方法 :Yii::app()->getController()->id;      
 
 在view中得到当前action的ID方法 :Yii::app()->getController()->getAction()->id;     
 
 yii获取ip地址 :Yii::app()->request->userHostAddress;   
 
 yii判断提交方式 :Yii::app()->request->isPostRequest  
 
得到当前域名: Yii::app()->request->hostInfo   
 
 得到proteced目录的物理路径 :YII::app()->basePath;     
 
 获得上一页的url以返回 :Yii::app()->request->urlReferrer;  
 
 得到当前url :Yii::app()->request->url;  
 
 得到当前home url :Yii::app()->homeUrl  
 
 得到当前return url :Yii::app()->user->returnUrl 
 
 项目路径 :dirname(Yii::app()->BasePath) 
 
Yii::getPathOfAlias('webroot') &nbsp;    如果你自己有个目录下有些类或文件常用,可以在main.php的最上边定义一个路径别名,别名可以被翻译为其相应的路径。
 
'aliases'=>array(
'local'=>'path/to/local/'
),    如果是多个可以在main.php中的array中加一个配置
 
<?php echo $this->getLayoutFile('main'); ?>
 $this->redirect('index.php?r=admin/manage');

转自:http://my.oschina.net/chen08054/blog/52943

http://www.yiiframework.com/doc/guide/1.1/zh_cn/basics.namespace

原文地址:https://www.cnblogs.com/youxin/p/3822204.html