ThinkPHP 3使用OSS的方法


Posted in PHP onJuly 19, 2018

准备工作

  • 登录阿里云官网,将鼠标移至产品找到并单击对象存储OSS打开OSS产品详情页面。
  • 在OSS产品详情页中的单击立即开通。
  • 开通服务后,在OSS产品详情页面单击管理控制台直接进入OSS管理控制台界面。
  • 您也可以单击位于官网首页右上方菜单栏的控制台,进入阿里云管理控制台首页,然后单击左侧的 对象存储OSS菜单 进入OSS管理控制台界面。
  • 点击右上角 access key 按钮,进入子页面点击创建access key按钮,创建成功后获取 Access Key ID 和 Access Key Secret 。

安装OSS PHP SDK

关于安装OSS PHP SDK的方法,请参看官网。对于Thinkphp 5,推荐通过 composer 方式管理项目依赖。

打开命令行,切换到项目根目录,输入以下命令

composer require aliyuncs/oss-sdk-php

如果一直下载不成功,请在composer reauire之前加入composer中国镜像

composer config -g repo.packagist composer https://packagist.phpcomposer.com

同时,您的项目下的 vendor 文件夹内,也将新建 aliyuncs 文件夹,里面的文件就是OSS库文件及示例文件。

ThinkPHP 3使用OSS的方法 

填写配置项

修改文件 /Application/Common/Conf/config.php

'ALIOSS_CONFIG'     => array(
    'KEY_ID'    => '',  // 阿里云oss key_id
    'KEY_SECRET'  => '',  // 阿里云oss key_secret
    'END_POINT'   => '',  // 阿里云oss endpoint
  ),

创建实例化函数

文件 /Application/Common/Common/function.php,如果不存在则新建。

require_once('/vendor/autoload.php');


function new_oss()
{ 
  $config = C('aliyun_oss');
  
  return new \OSS\OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']);
}

控制器中调用OSS

文件 Application/Home/Controller/IndexController.php,可以是任意控制器或模型文件。

public function index()

{
  $bucket = '<填写您的bucket名称>';

  $object = '<填写您的object名称>';

  $config = C('aliyun_oss');
  //创建ossClient

  $ossClient = new_oss();


  //创建bucket

  $ossClient->createBucket($bucket);

  
  //创建object

  $ossClient->putObject($config['Bucket'], $object, 'object content');


  //获取object内容

  $object = $ossClient->getObject($config['Bucket'], $object);


  //删除object

  $ossClient->deleteObject($bucket, $object);


  //删除bucket

  $ossClient->deleteBucket($bucket);
}

总结

以上所述是小编给大家介绍的ThinkPHP 3使用OSS,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php缓存技术介绍
Nov 25 PHP
小偷PHP+Html+缓存
Dec 20 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
深入php self与$this的详解
Jun 08 PHP
浅析ThinkPHP的模板输出功能
Jul 01 PHP
php批量删除cookie的简单实现方法
Jan 26 PHP
php中使用session防止用户非法登录后台的方法
Jan 27 PHP
分享PHP计算两个日期相差天数的代码
Dec 23 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
PHP中仿制 ecshop验证码实例
Jan 06 PHP
PHP策略模式定义与用法示例
Jul 27 PHP
laradock环境docker-compose操作详解
Jul 29 PHP
php命令行写shell实例详解
Jul 19 #PHP
php工具型代码之印章抠图
Jul 18 #PHP
php压缩文件夹最新版
Jul 18 #PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 #PHP
PHP7新特性之抽象语法树(AST)带来的变化详解
Jul 17 #PHP
阿里云的WindowsServer2016上部署php+apache
Jul 17 #PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 #PHP
You might like
高分R级DC动画剧《哈莉·奎茵》第二季正式预告首发
2020/04/09 欧美动漫
php获取数组长度的方法(有实例)
2013/10/27 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
2014/08/25 PHP
经典PHP加密解密函数Authcode()修复版代码
2015/04/05 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
javascript TextArea动态显示剩余字符
2008/10/22 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
THREE.JS入门教程(4)创建粒子系统
2013/01/24 Javascript
JS 打印功能代码可实现打印预览、打印设置等
2014/10/31 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
深入浅析Node.js单线程模型
2017/07/10 Javascript
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
2019/06/10 Javascript
ES6对象操作实例详解
2020/05/23 Javascript
微信小程序使用前置摄像头拍照
2020/10/22 Javascript
vue 使用localstorage实现面包屑的操作
2020/11/16 Javascript
详解javascript脚本何时会被执行
2021/02/05 Javascript
[43:49]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python实现简单的文字识别
2018/11/27 Python
python 定时器,轮询定时器的实例
2019/02/20 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
python 实现按对象传值
2019/12/26 Python
详解Python中的分支和循环结构
2020/02/11 Python
python sklearn包——混淆矩阵、分类报告等自动生成方式
2020/02/28 Python
解决运行出现'dict' object has no attribute 'has_key'问题
2020/07/15 Python
倩碧美国官网:Clinique美国
2016/07/20 全球购物
介绍一下HDLC(High-Level Data Link Control)高层数据链路协议
2012/01/21 面试题
2014县委书记四风对照检查材料思想汇报
2014/09/21 职场文书
正风肃纪剖析材料
2014/09/30 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
2014年优秀党员材料
2014/12/18 职场文书
给老师的一封感谢信
2015/01/20 职场文书
人力资源部岗位职责
2015/02/11 职场文书
微信小程序基础教程之echart的使用
2021/06/01 Javascript