在Yii框架的开发过程中常常需要调取一些常用的路径地址,比如控制器的ID,方法的ID等,用于来组装跳转或者其他用途。你也可以写成固定的链接,但是每个页面都写固定的链接,这样费时费力,也不具备扩展性和灵活性,更不是程序员的作风和风格,大道至简。(举例,dodo在分页的时候需要给分页方法传递一个url地址,且我的一个页面会有两处的分页,这样就需要写两个url地址,在修改和新建过程中比较繁琐一点。经改进,页面不再需要传递url字符串,直接取~~)
一:Yii framework中的常用路径
//在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 framework路径:取得当前的完整路径
Yii::getFrameworkPath();
二:Yii framework 已经定义的命名空间常量
//system: 指向Yii框架目录; Yii\framework
//zii: 指向zii library 目录; Yii\framework\zii
//application : 指向应用程序基本目录; protected\
//webroot: 指向包含里入口脚本 文件的目录; .\
//ext : 指向包含所有第三方扩展的目录; \protected\extensions
//用法:Yii::getPathOfAlias('webroot')
三:插入meta信息,jQuery信息
Yii::app()->clientScript->registerMetaTag('keywords','关键字');
Yii::app()->clientScript->registerMetaTag('description','一些描述');
Yii::app()->clientScript->registerMetaTag('author','作者');
//在控制器添加CSS文件或JavaScript文件
Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/my.css');
Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/css/my.js');
//调用YII框架中jquery:(framework/web/js/source的js)
Yii::app()->clientScript->registerCoreScript('jquery');
//其中registerCoreScriptkey调用的文件在framework/web/js/packages.php列表中可以查看