最近有一个项目需要集成七牛云存储的图片存储和调用功能,程序是基于CodeIgniter 2.1.3的PHP框架。刚拿到手完全无从下手的感觉,因为像框架这种东西,想从官方的PHPSDK集成进去,需要改动很多地方。还好,有前辈蹚水,我等后辈直接参考或者说是拿来用了。上传插件采用的是plupload。
plupload:www.plupload.com/
多附件上传控件plupload的使用心得:www.cnblogs.com/luckybird/archive/2013/01/15/2861072.html
七牛云存储:qiniu.com
为做备份之用,还是整篇拉过来一份吧:
最近想做个相册系统,平时都是使用ThinkPHP来开发的,但是这次想换一个PHP框架试试,于是选择了CodeIgniter框架,因为熟悉了TP框架,所以CodeIgniter学起来也相对容易点.
网上搜了一下,几乎没有CodeIgniter结合七牛的案例,加上自己也是初次使用CodeIgniter和七牛,所以花了一整天的时间在研究这个,用到的上传插件是Plupload,在这里分享给大家,希望对大家有帮助。
修改七牛php-sdk
首先下载七牛的php-sdk,将压缩包内的qiniu文件夹放置到CodeIgniter框架applicationlibraries文件夹下.因为CodeIgniter的类库对命名有要求,而七牛sdk的类库文件名和类名不一致,所以需要稍微修改下sdk里面的文件名.
将io.php修改为Qiniu_PutExtra.php
将rs.php修改为Qiniu_RS_GetPolicy.php
将fop.php修改为Qiniu_ImageView.php
引入Plupload并初始化
在模板中添加标签,用于显示上传区域
设置参数,初始化Plupload(下面有个eval的地方需要手动去掉中间的空格)
CodeIgniter代码部分
在控制器中编写一个方法,用来显示刚才的视图页面.
代码中注释写的很全,应该没有需要补充的地方了,代码拿来直接可用,非常省心
参考文章:codeigniter.org.cn/forums/thread-19738-1-1.html
进阶:plupload如何限制上传文件数量,限制只能上传单个文件