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 相关文章推荐
phpMyadmin 用户权限中英对照
Apr 02 PHP
PHP 获取文件路径(灵活应用__FILE__)
Feb 15 PHP
php设计模式之观察者模式的应用详解
May 21 PHP
PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等)
Apr 21 PHP
php提示Failed to write session data错误的解决方法
Dec 17 PHP
php实现图片转换成ASCII码的方法
Apr 03 PHP
php简单实现快速排序的方法
Apr 04 PHP
深入理解PHP原理之执行周期分析
Jun 01 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
May 05 PHP
快速解决PHP调用Word组件DCOM权限的问题
Dec 27 PHP
Thinkphp集成抖音SDK的实现方法
Apr 28 PHP
php + ajax 实现的写入数据库操作简单示例
May 16 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中数字、字符与对象判断函数用法实例
2014/11/26 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
node.js中的fs.read方法使用说明
2014/12/17 Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
2015/02/04 Javascript
浅谈jquery中delegate()与live()
2015/06/22 Javascript
jQuery在线选座位插件seat-charts特效代码分享
2015/08/27 Javascript
JS实现图片高亮展示效果实例
2015/11/24 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
深入浅出ES6之let和const命令
2016/08/25 Javascript
js鼠标按键事件和键盘按键事件用法实例汇总
2016/10/03 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
2018/05/31 jQuery
JS实现鼠标拖拽盒子移动及右键点击盒子消失效果示例
2019/01/29 Javascript
搭建一个Koa后端项目脚手架的方法步骤
2019/05/30 Javascript
javascript实现评分功能
2020/06/24 Javascript
jquery实现广告上下滚动效果
2021/03/04 jQuery
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python实现的简单发送邮件脚本分享
2014/11/07 Python
Python标准库06之子进程 (subprocess包) 详解
2016/12/07 Python
详解Python if-elif-else知识点
2018/06/11 Python
PyQt Qt Designer工具的布局管理详解
2019/08/07 Python
python爬取Ajax动态加载网页过程解析
2019/09/05 Python
python的等深分箱实例
2019/11/22 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
python使用matplotlib:subplot绘制多个子图的示例
2020/09/24 Python
美体小铺印度官网:The Body Shop印度
2019/10/17 全球购物
大学生职业生涯规划书前言
2014/01/09 职场文书
司机职责范本
2014/03/08 职场文书
创优争先心得体会
2014/09/11 职场文书
公司租房协议书
2014/10/14 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
幼儿园老师新年寄语
2015/08/17 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
Python使用Beautiful Soup(BS4)库解析HTML和XML
2022/06/05 Python
Nginx如何配置根据路径转发详解
2022/07/23 Servers