这个只是基于又拍云上面的一个小小的扩展,也是作了一个封装。
因为又拍云每次操作bucket都需要为它设置用户名和密码。如果我在一个controller里多次操作不同的bucket,有点麻烦 ,于是就做了一个小封装。
使用起来很简单,在配置文件main.php的components中加入一小段:
XML/HTML代码
- 'components'=>array(
- 'upyun'=>'ext.upyun.EasyUpyun',
- ),
当然,如果有需要额外定制的变量,也可以参考其他组件的设置方法。
附件在这里,我就不多说了,贴上组件的注释:
PHP代码
- /**
- * EasyUpyun.php
- * @example:
- * Yii::app()->upyun->upload($domain,$savedname,$datas,$autoCreateDir=true);
- * 这个是一个demo,推荐仍然使用upyun提供的API,这样就可以几乎不用改代码
- * UpyunBase的用法是$upyun->setApiDomain('abc');
- * 组件用法:Yii::app()->upyun->setApiDomain('bucket的别名','abc');
- *
- * @category upyun
- * @package upyun
- * @author gouki <gouki.xiao@gmail.com>
- * @version $Id$
- * @created 12-7-6 PM11:07
- */
再贴上变量的注释
PHP代码
- /**
- * 别名
- * 因为又拍云的bucket的名字比较长,在开发的时候,如果用很长的bucket会很痛苦,因此就做了一个别名功能用来代替bucket
- * @var array
- */
- public $alias = array(
- 'static' => 'test-public'
- );
- /**
- * 又拍云的bucket
- * key 为 bucket
- * value 为 bucket对应的用户名和密码,格式为“用户名:密码”
- * @var array
- */
- public $bucket = array(
- 'test-public' => 'admin:123456'
- );
- /**
- * 又拍云API实例
- * @var UpYun
- */
- public $upyun;
- /**
- * 是否采用upyun的debug功能,该功能为全局打开,一旦开启,所有bucket涉及的debug都开启
- * @var bool
- */
- public $debug = FALSE;
Over,有想试用的,可以直接尝试下载附件。