ThinkPHP集成万象优图
2016-07-03 16:48
736 查看
项目原因
不告诉你,反正需要把腾讯云的万象优图整合进来。
下载PHP版的万象优图的SDK
下载地址:https://github.com/tencentyun/image-php-sdk
git clone 后的文件架构如下
修改Tencentyun文件夹下面的7个文件的文件名为
将修改好的sdk导入到项目中去,我这里导入到了
修改Tencentyun文件夹下的7个
参考sdk文件夹下的
代码后面有注意事项。
注意事项
代码中使用了地址为:
测试示例会顺带使用万象优图的
访问
测试上传是否成功 。我的
不告诉你,反正需要把腾讯云的万象优图整合进来。
下载PHP版的万象优图的SDK
下载地址:https://github.com/tencentyun/image-php-sdk
git clone 后的文件架构如下
修改Tencentyun文件夹下面的7个文件的文件名为
*.class.php.
将修改好的sdk导入到项目中去,我这里导入到了
Application->Home->Controller->PhotoServer中了,如下图。
修改Tencentyun文件夹下的7个
.class.php文件的
namespace为正确的
namespace。
namespace Home\Controller\PhotoServer\Tencentyun;
参考sdk文件夹下的
samplev2.php编写测试
Controller。代码如下 :
代码后面有注意事项。
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2016/7/3 * Time: 11:44 */ namespace Home\Controller\PhotoServer; use Home\Controller\BaseController; require('include.php'); use Home\Controller\PhotoServer\Tencentyun\ImageV2; use Home\Controller\PhotoServer\Tencentyun\Auth; use Home\Controller\PhotoServer\Tencentyun\ImageProcess; class PhotoTestController extends BaseController { /** * @return view */ public function index() { //智能鉴黄 $pornUrl = 'http://b.hiphotos.baidu.com/image/pic/item/8ad4b31c8701a18b1efd50a89a2f07082938fec7.jpg'; $pornRet = ImageProcess::pornDetect($pornUrl); var_dump($pornRet); // V2增强版空间 带有空间和自定义文件名的示例 // 上传图片 $bucket = 'zlktest'; // 自定义空间名称,在http://console.qcloud.com/image/bucket创建 $fileid = 'sample' . time(); // 自定义文件名 $uploadRet = ImageV2::upload('D:/123.jpg', $bucket, $fileid); var_dump('upload', $uploadRet); //分片上传 $uploadSliceRet = ImageV2::uploadSlice('D:/123.jpg'); var_dump('upload_slice', $uploadSliceRet); if (0 === $uploadRet['code']) { $fileid = $uploadRet['data']['fileid']; $downloadUrl = $uploadRet['data']['downloadUrl']; // 查询管理信息 $statRet = ImageV2::stat($bucket, $fileid); var_dump('stat', $statRet); // 复制 $copyRet = ImageV2::copy($bucket, $fileid); var_dump('copy', $copyRet); // 生成私密下载url $expired = time() + 999; $sign = Auth::getAppSignV2($bucket, $fileid, $expired); $signedUrl = $downloadUrl . '?sign=' . $sign; var_dump('downloadUrl:', $signedUrl); //生成新的单次签名, 必须绑定资源fileid,复制和删除必须使用,其他不能使用 $fileid = $fileid . time() . rand(); // 自定义文件名 $expired = 0; $sign = Auth::getAppSignV2($bucket, $fileid, $expired); var_dump($sign); //生成新的多次签名, 可以不绑定资源fileid $fileid = ''; $expired = time() + 999; $sign = Auth::getAppSignV2($bucket, $fileid, $expired); var_dump($sign); //$delRet = ImageV2::del($bucket, $fileid); //var_dump($delRet); } } }
注意事项
代码中使用了地址为:
http://b.hiphotos.baidu.com/image/pic/item/8ad4b31c8701a18b1efd50a89a2f07082938fec7.jpg的图片。图片内容如下 :
ImageV2::upload('D:/123.jpg', $bucket, $fileid);这里的
D:/123.jpg是用来模拟上传测试的。
测试示例会顺带使用万象优图的
黄图鉴别功能。
访问
localhost/项目名/index.php/Home/PhotoServer/PhotoTest/index路径。返回结果如下,返回字段的详细信息请参考万象优图的官方文档。
测试上传是否成功 。我的
D:/123.jpg的图片内容是步骤4中的
Tencentyun的文件结构图。根据上面9中所得到的地址为:
http://zlktest-10010932.image.myqcloud.com/786c2e74-4591-42ed-861e-8fe27b356c14.即可严重。
相关文章推荐
- kindeditor 批量上传 上传失败 thinkphp swfupload session
- ThinkPHP关联模型操作实例分析
- thinkphp3.0 模板中函数的使用
- ThinkPHP中where()使用方法详解
- ThinkPHP采用<volist>实现三级循环代码实例
- Thinkphp模板标签if和eq的区别和比较实例分析
- 合并ThinkPHP配置文件以消除代码冗余的实现方法
- ThinkPHP中自定义目录结构的设置方法
- ThinkPHP控制器详解
- ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
- 解析thinkphp中的M()与D()方法的区别
- ThinkPHP采用模块和操作分析
- Thinkphp模板中使用自定义函数的方法
- linux下使用ThinkPHP需要注意大小写导致的问题
- ThinkPHP中FCKeditor编辑器的使用方法
- thinkphp的CURD和查询方式介绍
- THINKPHP支持YAML配置文件的设置方法
- Thinkphp中import的几个用法详细介绍
- thinkphp3.x中cookie方法的用法分析
- 浅谈thinkphp的实例化模型