Yii路径总结(转)

如果是 // 就会默认去调
protected/views/layouts

//代表 绝对路径 

其实 就是 绝对和相对的关系 /代表相对路径,如module/user下的layout
 用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找
 
Yii framework已经定义的命名空间常量:
 system: 指向Yii框架目录; YIIframework
 zii: 指向zii library 目录; YIIframeworkzii
 application : 指向应用程序基本目录;  protected
 webroot: 指向包含里入口脚本 文件的目录. 此别名自 1.0.3 版起生效.
 ext : 指向包含所有第三方扩展的目录, 从版本 1.0.8 可用;  protectedextensions
 
Yii::getPathOfAlias('zii')
Yii::import ('zii.*') 
Yii::setPathOfAlias('backend', $backend);
'import' => array(
'backend.models.*', 

应用的主目录是指包含所有安全系数比较高的PHP代码和数据的根目录。在默认情况下,这个目录一般是入口代码所在目录的一个目录: protected  。这个路径可以通过在application configuration里设置 basePath来改变.

 
 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');
 
<?php
 //当前域名
 
echo Yii::app()->request->hostInfo;
 
//除域名外的URL
 
echo Yii::app()->request->getUrl();
 
//除域名外的首页地址
 
echo Yii::app()->user->returnUrl;
 
//除域名外的根目录地址
 echo Yii::app()->homeUrl;
 ?>

1. 获取控制器名

在控制器中获取控制器名:

$name = $this->getId();

在视图中获取控制器名:

$name = Yii::app()->controller->id;  

2. 获取动作名

在控制器beforeAction()回调函数中获取动作名:

$name = $action->id;  

在其他地方获取动作名:

$name = $this->getAction()->getId(); 
 
 
原文地址:https://www.cnblogs.com/imxiu/p/3410935.html