YII 路径总结

如果是 // 就会默认去调 protected/views/layouts,//代表 绝对路径

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

用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找

Java代码  

  1. $this->renderPartial('application.modules.admin.views.product._search')  

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

Java代码  

  1. Yii::getPathOfAlias('zii')  
  2. Yii::import ('zii.*')   
  3. Yii::setPathOfAlias('backend', $backend);  
  4. 'import' => array(  
  5. 'backend.models.*',   

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

YII framework路径

Java代码  

  1. Yii::getFrameworkPath()  

 YII 文件下载

Java代码  

  1. Yii::app()->getRequest()->sendFile('test.txt', 'File content goes here.');   

 protected/runtime

Java代码  

  1. Yii::app()->getRuntimePath();  

protected/venders目录

Java代码  

  1. Yii::import('application.venders.*');    

或在protected/config/main.php说明

Java代码  

  1. 'import'=>array(    
  2.         ......    
  3.         'application.venders.*',    
  4.     ),  

插入meta信息

Java代码  

  1. Yii::app()->clientScript->registerMetaTag('关键字','keywords');  
  2. Yii::app()->clientScript->registerMetaTag('一些描述','description');  
  3. Yii::app()->clientScript->registerMetaTag('作者','author');  
  4. Yii::app()->clientScript->registerMetaTag(' text/html;charset=utf-8', null, 'Content-Type');  

<link rel="alternate" type="application/rss+xml" href="http://www.dreamdu.com/feed/" />

Java代码  

  1. Yii::app()->clientScript->registerLinkTag('alternate','application/rss+xml',$this->createUrl('/feed'));  

如何在控制器添加CSS文件或JavaScript文件

Java代码  

  1. Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/my.css');  
  2. Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/css/my.js');  
  3. <?php echo $this->module->assetsUrl; ?>/css/main.css  

调用YII框架中framework/web/js/source的js,其中registerCoreScript key调用的文件在framework/web/js/packages.php列表中可以查看

Java代码  

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

在view中得到当前controller的ID方法:

Java代码  

  1. Yii::app()->getController()->id;    

在view中得到当前action的ID方法:

Java代码  

  1. Yii::app()->getController()->getAction()->id;    

yii获取ip地址

Java代码  

  1. Yii::app()->request->userHostAddress;  

yii判断提交方式

Java代码  

  1. Yii::app()->request->isPostRequest isDeleteRequest isAjaxRequest  

得到当前域名:

Java代码  

  1. Yii::app()->request->hostInfo  

得到proteced目录的物理路径

Java代码  

  1. YII::app()->basePath;  

得到模块名称

Java代码  

  1. $module = Yii::app()->getModule()->getId();  

 

获得上一页的url以返回

Java代码  

  1. Yii::app()->request->urlReferrer;  

得到当前url

Java代码  

  1. Yii::app()->request->url;  

得到当前home url

Java代码  

  1. Yii::app()->homeUrl  

得到当前return url

Java代码  

  1. Yii::app()->user->returnUrl  

项目路径

Java代码  

  1. dirname(Yii::app()->BasePath)  
  2. Yii::app()->getBaseUrl(true);  

<?php echo $this->getLayoutFile('main'); ?>

$this->redirect('index.php?r=admin/manage');

{createUrl()}

Java代码  

  1. echo $this->createUrl('urlBoyLeeTest');  
  2. //out => /yii_lab/index.php?r=lab/urlBoyLeeTest  
  3. $this->createUrl('post/read') // /index.php/post/read  

 

Java代码  

  1. <?php echo Yii::app()->request->baseUrl; ?>/css/screen.css  
  2. Yii::app()->theme->baseUrl.'/images/FileName.gif'    

{createAbsoluteUrl()}

Java代码  

  1. echo $this->createAbsoluteUrl('urlBoyLeeTest');  
  2. //out => http://localhost/yii_lab/index.php?r=lab/urlBoyLeeTest  
时间: 2024-09-09 11:17:51

YII 路径总结的相关文章

YII路径的用法总结_php实例

在yii中如果是 // 就会默认去调 protected/views/layouts,//代表绝对路径.这其实就是绝对和相对的关系 /代表相对路径,如module/user下的layout.使用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找 Yii framework已经定义的命名空间常量: system: 指向Yii框架目录; YII\frameworkzii: 指向zii library 目录; YII\fr

PHP Yii开源框架入门学习(二)修改Yii网站访问路径

默认网站访问路径如下所示: http://127.0.0.1:8080/zuizen/index.php?r=admin/UserInfo/admin 这种路径对搜索引擎不友好,需要改成如下形式: http://127.0.0.1:8080/zuizen/admin/UserInfo/admin.html 以下步骤实现以上要求: 1) 修改Apache配置,使其支持重写: 打开Apache配置文件httpd.conf:开启apache的mod_rewrite模块: 去掉LoadModule re

yii框架源码分析之创建controller代码

使用yii框架的url路径一般形如hostname/?r=xxxx/xxxx/xxxx&sdfs=dsfdsf 我们可以看到有时会使用protected目录下的controller,有时会使用module中controller,具体是如何处理的呢,请看如下的分析: 以下代码摘自yii框架核心代码%Yiiroot%/framework/web/CWebApplication.php 复制代码 代码如下: ===============================================

PHP Yii开源框架入门学习(三)Yii的相关配置总结

以下是Yii相关配置的总结: 1,/protected/config/main.php中的配置: 1) 修改默认Controller,下载下来的源代码默认Controler为siteController: 在protected/config/main.php中,修改键defaultController的值为指定的controller,在该controller中须指定默认action.当request中未明确目的时,采用defaultController/defaultAction来响应. 'de

PHP 5.3为Yii PHP框架配置php pdo mysql失败的原因

因项目需要使用PHP Yii框架,有同事配置php和yii在Yii框架,访问Yii组件必要条件网页显示mysql pdo一直未加载: 经检查php.ini文件,组件已经设置为加载: extension_dir = "ext" cgi.force_redirect = 0 extension=php_mbstring.dll extension=php_mysql.dll extension=php_mysqli.dll extension=php_pdo_mysql.dll 经研究和试

PHP开发框架Yii Framework教程(5) URL管理

在上一篇Yii Framework 开发简明教程(4) Hangman 猜单词游戏实例略去了几个方面的问题,一是配置文件main.php 的 URLManager,二是Controller的基类CComponent ,三是定义View使用的CHtml帮助类.本篇战开介绍URLManager,URL管理. return array( ... 'components'=>array( 'urlManager'=>array( 'urlFormat'=>'path', 'rules'=>

Yii获取当前url和域名的方法

  本文实例讲述了Yii获取当前url和域名的方法.分享给大家供大家参考.具体如下: 假设我们当前页面的访问地址是:http://localhost/CMS/public/index.php?r=news&id=1 一. 1.获取当前域名: 代码如下: echo Yii::app()->request->hostInfo; 结果:http://localhost 2.获取(除域名外的)当前URL: 代码如下: echo Yii::app()->request->getUrl

Yii学习总结之安装配置

 本文是Yii学习总结系列文章的第一篇,主要给大家介绍下YII的简单介绍及安装和配置,有需要的小伙伴参考下吧.     之前写过Yii的文章,正好假期没啥事,就结合以前的文章,Yii的官方文档,再加上最近的关于Yii的收获总结一下,写个系列~~ Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程.从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L

yii上传文件或图片实例

 最近在看yii,yii有自带上传图片的方法.简单的贴代码.分为两块,第一块view:test.php.第二块是controller:TestController.php 1.test.php 代码如下: <body> <form action="<?php echo $this->createUrl('/test/upload/');?>" method="post" enctype="multipart/form-d