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 相关文章推荐
PHP base64+gzinflate压缩编码和解码代码
Oct 03 PHP
phpmyadmin导入(import)文件限制的解决办法
Dec 11 PHP
基于php权限分配的实现代码
Apr 28 PHP
ThinkPHP模板判断输出Defined标签用法详解
Jun 30 PHP
php实现QQ空间获取当前用户的用户名并生成图片
Jul 25 PHP
php实现微信公众号主动推送消息
Dec 31 PHP
php版交通银行网银支付接口开发入门教程
Sep 26 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
PHP中常用的魔术方法
Apr 28 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
PHP htmlspecialchars_decode()函数用法讲解
Mar 01 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 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中使用XML
2006/10/09 PHP
新版PHP极大的增强功能和性能
2006/10/09 PHP
php fsockopen解决办法 php实现多线程
2014/01/20 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
理清PHP在Linxu下执行时的文件权限方法
2017/06/07 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
获取DOM对象的几种扩展及简写
2006/10/09 Javascript
学习ExtJS border布局
2009/10/08 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
2013/12/04 Javascript
javascript 常见功能汇总
2015/06/11 Javascript
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
JS模拟实现方法重载示例
2016/08/03 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
2017/06/13 Javascript
r.js来合并压缩css文件的示例
2018/04/26 Javascript
详解angular部署到iis出现404解决方案
2018/08/14 Javascript
Vue3.0的优化总结
2020/10/16 Javascript
python的id()函数介绍
2013/02/10 Python
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python实现方便使用的级联进度信息实例
2015/05/05 Python
Python使用functools模块中的partial函数生成偏函数
2016/07/02 Python
浅析使用Python操作文件
2017/07/31 Python
Python 将RGB图像转换为Pytho灰度图像的实例
2017/11/14 Python
Python多进程multiprocessing.Pool类详解
2018/04/27 Python
pytorch 中的重要模块化接口nn.Module的使用
2020/04/02 Python
Oakley官网:运动太阳镜、雪镜和服装
2016/09/30 全球购物
薇诺娜官方网上商城:专注敏感肌肤
2017/05/25 全球购物
应届毕业生的个人自我鉴定
2013/10/24 职场文书
2013英文求职信模板范文
2013/11/15 职场文书
学雷锋先进个人事迹
2014/05/26 职场文书
美食节目策划方案
2014/05/31 职场文书
银行柜员与客户起冲突检讨书
2014/09/27 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
五一劳动节活动总结
2015/02/09 职场文书
理解python中装饰器的作用
2021/07/21 Python