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 相关文章推荐
MySql 按时间段查询数据方法(实例说明)
Nov 02 PHP
PHP curl_setopt()函数实例代码与参数分析
Jun 02 PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 PHP
CodeIgniter输出中文乱码的两种解决办法
Jun 12 PHP
PHP实现的迷你漂流瓶
Jul 29 PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 PHP
php格式文件打开的四种方法
Feb 24 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
Apr 16 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 PHP
PHP Pipeline 实现中间件的示例代码
Apr 26 PHP
PHP后门隐藏的一些技巧总结
Nov 04 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
使用Huagepage和PGO来提升PHP7的执行性能
2015/11/30 PHP
Yii核心验证器api详解
2016/11/23 PHP
PHP实现表单提交时去除斜杠的方法
2016/12/26 PHP
jQuery中live方法的重复绑定说明
2011/10/21 Javascript
网页打开自动最大化的js代码
2012/08/22 Javascript
使用js检测浏览器的实现代码
2013/05/14 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
Grunt入门教程(自动任务运行器)
2015/08/06 Javascript
JQuery实现图片轮播效果
2015/09/15 Javascript
使用基于Node.js的构建工具Grunt来发布ASP.NET MVC项目
2016/02/15 Javascript
JavaScript页面实时显示当前时间实例代码
2016/10/23 Javascript
JavaScript运动框架 链式运动到完美运动(五)
2017/05/18 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
基于jQuery使用Ajax动态执行模糊查询功能
2018/07/05 jQuery
jQuery滑动效果实现方法分析
2018/09/05 jQuery
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
2019/05/21 Javascript
vue的$http的get请求要加上params操作
2020/11/12 Javascript
[40:04]Secret vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
使用Python的判断语句模拟三目运算
2015/04/24 Python
Python中用PIL库批量给图片加上序号的教程
2015/05/06 Python
Python3连接MySQL(pymysql)模拟转账实现代码
2016/05/24 Python
pandas中Timestamp类用法详解
2017/12/11 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
通过Python扫描代码关键字并进行预警的实现方法
2020/05/24 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
生物技术研究生自荐信
2013/11/12 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
捐助贫困学生倡议书
2014/05/16 职场文书
小学班主任事迹材料
2014/12/17 职场文书
2015年大学生实习评语
2015/03/25 职场文书
导游词之包公祠
2019/11/25 职场文书
win10下go mod配置方式
2021/04/25 Golang
一文搞懂Golang 时间和日期相关函数
2021/12/06 Golang
tomcat下部署jenkins的方法
2022/05/06 Servers