YII路径的用法总结


Posted in PHP onJuly 09, 2014

在yii中如果是 // 就会默认去调 protected/views/layouts,//代表绝对路径。这其实就是绝对和相对的关系 /代表相对路径,如module/user下的layout。使用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找

Yii framework已经定义的命名空间常量:

system: 指向Yii框架目录; YII\framework
zii: 指向zii library 目录; YII\framework\zii
application: 指向应用程序基本目录;  protected\
webroot: 指向包含里入口脚本文件的目录. 此别名自 1.0.3 版起生效. \
ext: 指向包含所有第三方扩展的目录, 从版本 1.0.8 可用;  \protected\extensions

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','作者'); 
<link rel="alternate" type="application/rss+xml" href="https://3water.com/" />
Yii::app()->clientScript->registerLinkTag('alternate','application/rss+xml',$this->createUrl('/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框架中framework/web/js/source的js,其中registerCoreScript key调用的文件在framework/web/js/packages.php列表中可以查看:

Yii::app()->clientScript->registerCoreScript('jquery');

在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)

如果你自己有个目录下有些类或文件常用,可以在main.php的最上边定义一个路径别名,别名可以被翻译为其相应的路径。

Yii::getPathOfAlias('webroot')

如果是多个可以在main.php中的array中加一个配置

'aliases'=>array( 
'local'=>'path/to/local/' 
), 
<?php echo $this->getLayoutFile('main'); ?>
$this->redirect('index.php?r=admin/manage');
{createUrl()}
echo $this->createUrl('urlBoyLeeTest'); 
//out => /yii_lab/index.php?r=lab/urlBoyLeeTest 
$this->createUrl('post/read') // /index.php/post/read 
<?php echo Yii::app()->request->baseUrl; ?>/css/screen.css 
Yii::app()->theme->baseUrl.'/images/FileName.gif'  
{createAbsoluteUrl()}
echo $this->createAbsoluteUrl('urlBoyLeeTest'); 
//out => http://localhost/yii_lab/index.php?r=lab/urlBoyLeeTest 
PHP 相关文章推荐
真正的ZIP文件操作类(php)
Jul 21 PHP
php array_search() 函数使用
Apr 13 PHP
php后台如何避免用户直接进入方法实例
Oct 15 PHP
php使用curl模拟登录后采集页面的例子
Nov 04 PHP
php ZipArchive压缩函数详解实例
Nov 06 PHP
codeigniter使用技巧批量插入数据实例方法分享
Dec 31 PHP
PHP中提问频率最高的11个面试题和答案
Sep 02 PHP
php中count获取多维数组长度的方法
Nov 03 PHP
php使用session二维数组实例
Nov 06 PHP
Thinkphp调用Image类生成缩略图的方法
Mar 07 PHP
php设计模式之装饰模式应用案例详解
Jun 17 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
Apr 04 PHP
YII实现分页的方法
Jul 09 #PHP
YII模块实现绑定二级域名的方法
Jul 09 #PHP
yii操作cookie实例简介
Jul 09 #PHP
Yii调试SQL的常用方法
Jul 09 #PHP
php判断GIF图片是否为动画的方法
Sep 04 #PHP
ThinkPHP3.2.2的插件控制器功能简述
Jul 09 #PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 #PHP
You might like
PHP网上调查系统
2006/10/09 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
新闻内页-JS分页
2006/06/07 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
javascript伸缩型菜单实现代码
2015/11/16 Javascript
vue分页组件table-pagebar使用实例解析
2020/11/15 Javascript
AngularJS入门教程之迭代器过滤详解
2016/08/18 Javascript
Vue.js第四天学习笔记
2016/12/02 Javascript
js选项卡的制作方法
2017/01/23 Javascript
使用Vue写一个datepicker的示例
2018/01/27 Javascript
Vue Socket.io源码解读
2018/02/07 Javascript
JavaScript从原型到原型链深入理解
2019/06/03 Javascript
JS实现的tab切换并显示相应内容模块功能示例
2019/08/03 Javascript
vue学习笔记之Vue中css动画原理简单示例
2020/02/29 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
javascript实现扫雷简易版
2020/08/18 Javascript
Javascript call及apply应用场景及实例
2020/08/26 Javascript
[00:15]天涯墨客终极技能展示
2018/08/25 DOTA
[02:12]Dota 2 推出全新英雄—— 电炎绝手
2019/08/23 DOTA
python字典序问题实例
2014/09/26 Python
开源软件包和环境管理系统Anaconda的安装使用
2017/09/04 Python
Python实现PS滤镜功能之波浪特效示例
2018/01/26 Python
python实现年会抽奖程序
2019/01/22 Python
常用python爬虫库介绍与简要说明
2020/01/25 Python
python内打印变量之%和f的实例
2020/02/19 Python
新加坡交友网站:be2新加坡
2019/04/10 全球购物
什么是Smarty变量操作符?如何使用Smarty变量操作符
2014/07/18 面试题
先进党支部事迹材料
2014/01/13 职场文书
营销部内勤岗位职责
2014/04/30 职场文书
自主招生推荐信范文
2014/05/10 职场文书
施工安全汇报材料
2014/08/17 职场文书
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
MYSQL常用函数介绍
2022/05/05 MySQL