目录
YII中assets的使用示例,yiiassets示例
yii框架怎把css、js、image发布到assets中
php yii框架数据库CRUD操作简单示例
首页 后端开发 php教程 YII中assets的使用示例,yiiassets示例_PHP教程

YII中assets的使用示例,yiiassets示例_PHP教程

Jul 13, 2016 am 10:21 AM
assets yii

YII中assets的使用示例,yiiassets示例

一、YII assets的作用:

1.yii中assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问protected下面的文件 ,但是我们又希望将module单独出来,所以需要使用发布,即将一个目录下的文件复制一份到assets下面方便通过url访问

$assets = Yii::getPathOfAlias('ext').'/css';
//$baseUrl = Yii::app()->getAssetManager()->publish($assets);
$baseUrl = Yii::app()->assetManager->publish($assets); //extensions/css发布到assets的创建一个随机不冲突的文件夹下
Yii::app()->clientScript->registerCssFile($baseUrl.'/main.css');//引用assets下面的main.css

登录后复制

2.如果一个模块需要添加使用资源,直接从webroot中引用添加即可。
但是试图创建一个模块能够在任何地方引用,且资源独立并能够避免命名冲突
你如何保证你的文件名不会与一些零散的应用程序的尝试使用相同名称的文件冲突,对于js,images,css也一样。
通过CAssetManager,Yii::app()->assetManager能够自动的将私有资源publish到公共目录下webroot/assets

二、使用示例:

下面以admin module为例说明assets的用法:

1、把需要用到的资源放在modules/admin/assets下。

2、通过 CAssetManager,Yii::app()->assetManager能够自动的将私有资源publish到公共目录下 网站目录/assets

3、Yii会自动在网站目录的/assets下创建一个随机不冲突的文件夹,如2b31b42b,并把你的modules/admin/assets目录下的文件拷贝过去。
通过如下代码获得,修改protected\modules\admin\AdminModule.php文件,

<&#63;php
class AdminModule extends CWebModule
{
 private $_assetsUrl;

 public function getAssetsUrl()
 {
 if($this->_assetsUrl===null)
  $this->_assetsUrl=Yii::app()->getAssetManager()->publish(Yii::getPathOfAlias('application.modules.admin.assets'));
 return $this->_assetsUrl;
 }

 public function setAssetsUrl($value)
 {
 $this->_assetsUrl=$value;
 }
}

登录后复制

然后,在/protected/modules/admin/views/layouts/main.php中使用$this->module->assetsUrl就可以调用你的css等文件了,代码如下所示:

<link rel="stylesheet" type="text/css" href="<&#63;php echo $this->module->assetsUrl; &#63;>/css/screen.css" rel="external nofollow" />

登录后复制

使用前还需要强制更新asset,代码如下:

$baseJsUrl = Yii::app()->getAssetManager()->publish($baseJsPath, false, -1, YII_DEBUG);
登录后复制

yii框架怎把css、js、image发布到assets中

但是本着解决问题的精神,发现assets是个好东东。$cs=Yii::app()->clientScript; $cssDir=Yii::getPathOfAlias("access.css") ; $published = Yii::app()->assetManager->publish($cssDir); $cssFile = $published . "/" . "homemain.css"; if (!Yii::app()->clientScript->isCssFileRegistered($cssFile)) { Yii::app()->clientScript->registerCssFile($cssFile); } ?>2. 上面用到的assetmanager是/web/CAssetManager.php中描述的,其中publish函数有如下参数:$path:css等文件的位置,$hashByName是否对在assets文件夹下生成的资源文件夹进行哈希,$level加载方式(单文件、文件夹全加载神马的),$forceCopy是否强制每次都重新加载(个人认为css调试的时候用比较好,否则修改过的css可能因为不重新加载而不能立即生效)。
 

php yii框架数据库CRUD操作简单示例

www.yiiframework.com/...st-app
你看完了看懂了那你基本算入门了
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/854354.htmlTechArticleYII中assets的使用示例,yiiassets示例 一、YII assets的作用: 1.yii中assets的作用是方便模块化,插件化的, 一般来说出于安全原因不允许通过...
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

vue3 vite assets动态引入图片及解决打包后图片路径错误不显示的方法 vue3 vite assets动态引入图片及解决打包后图片路径错误不显示的方法 May 10, 2023 pm 05:55 PM

vue3 vite assets动态引入图片及解决打包后图片路径错误不显示的方法

php如何使用Yii3框架? php如何使用Yii3框架? May 31, 2023 pm 10:42 PM

php如何使用Yii3框架?

如何使用PHP框架Yii开发一个高可用的云备份系统 如何使用PHP框架Yii开发一个高可用的云备份系统 Jun 27, 2023 am 09:04 AM

如何使用PHP框架Yii开发一个高可用的云备份系统

Yii2 vs Phalcon:哪个框架更适合开发显卡渲染应用? Yii2 vs Phalcon:哪个框架更适合开发显卡渲染应用? Jun 19, 2023 am 08:09 AM

Yii2 vs Phalcon:哪个框架更适合开发显卡渲染应用?

Symfony vs Yii2:哪个框架更适合开发大型Web应用? Symfony vs Yii2:哪个框架更适合开发大型Web应用? Jun 19, 2023 am 10:57 AM

Symfony vs Yii2:哪个框架更适合开发大型Web应用?

Yii框架中的数据查询:高效地访问数据 Yii框架中的数据查询:高效地访问数据 Jun 21, 2023 am 11:22 AM

Yii框架中的数据查询:高效地访问数据

yii如何将对象转化为数组或直接输出为json格式 yii如何将对象转化为数组或直接输出为json格式 Jan 08, 2021 am 10:13 AM

yii如何将对象转化为数组或直接输出为json格式

Yii2编程指南:运行Cron服务的方法 Yii2编程指南:运行Cron服务的方法 Sep 01, 2023 pm 11:21 PM

Yii2编程指南:运行Cron服务的方法

See all articles