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之第五天
Oct 09 PHP
PHP session会话的安全性分析
Sep 08 PHP
php下利用curl判断远程文件是否存在的实现代码
Oct 08 PHP
提高php运行速度的一些小技巧分享
Jul 03 PHP
PHP漏洞全解(详细介绍)
Nov 13 PHP
ThinkPHP中的系统常量和预定义常量集合
Jul 01 PHP
PHP中Session和Cookie是如何操作的
Oct 10 PHP
Laravel 5.3 学习笔记之 错误&amp;日志
Aug 28 PHP
PHP读取大文件的几种方法介绍
Oct 27 PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 PHP
PHP编程实现脚本异步执行的方法
Aug 09 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 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
国内咖啡文化
2021/03/03 咖啡文化
一个高ai的分页函数和一个url函数
2006/10/09 PHP
php缓存技术介绍
2006/11/25 PHP
PHP系列学习之日期函数使用介绍
2012/08/18 PHP
PHPMailer邮件发送的实现代码
2013/05/04 PHP
PHP互换两个变量值的方法(不用第三变量)
2016/11/14 PHP
php实现的简单数据库操作Model类
2016/11/16 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
javascript 复杂的嵌套环境中输出单引号和双引号
2009/05/26 Javascript
javascript 全等号运算符使用说明
2010/05/31 Javascript
Javascript的一种模块模式
2010/09/08 Javascript
js实现翻页后保持checkbox选中状态的实现方法
2012/11/03 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
javascript bom是什么及bom和dom的区别
2015/11/26 Javascript
基于JavaScript创建动态Dom
2015/12/08 Javascript
jquery实现全选功能效果的实现代码
2016/05/05 Javascript
Bootstrap多级菜单的实现代码
2017/05/23 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
[49:15]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第二场 1月19日
2021/03/11 DOTA
[01:20:05]DOTA2-DPC中国联赛 正赛 Ehome vs VG BO3 第二场 2月5日
2021/03/11 DOTA
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
PyQt5实现类似别踩白块游戏
2019/01/24 Python
在PyCharm中控制台输出日志分层级分颜色显示的方法
2019/07/11 Python
Python如何给函数库增加日志功能
2020/08/04 Python
Python结合百度语音识别实现实时翻译软件的实现
2021/01/18 Python
Volcom英国官方商店:美国殿堂级滑板、冲浪、滑雪服装品牌
2019/03/13 全球购物
POP文化和音乐灵感的时尚:Hot Topic
2019/06/19 全球购物
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
法学专业个人求职信
2013/09/26 职场文书
领导检查欢迎词
2014/01/14 职场文书
《金色的脚印》教后反思
2014/04/23 职场文书
2014年党的群众路线教育实践活动总结
2014/04/25 职场文书
2014年计生工作总结
2014/11/21 职场文书
合同补充协议书
2016/03/24 职场文书
2016年学校爱国卫生月活动总结
2016/04/06 职场文书