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 HTML代码串 截取实现代码
Jun 29 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
Jan 19 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
Nov 19 PHP
thinkphp常见路径用法分析
Dec 02 PHP
php实现计数器方法小结
Jan 05 PHP
使用纯php代码实现页面伪静态的方法
Jul 25 PHP
PHP的Yii框架的基本使用示例
Aug 21 PHP
php面向对象与面向过程两种方法给图片添加文字水印
Aug 26 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
Mar 16 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 PHP
Yii2框架中一些折磨人的坑
Dec 15 PHP
PHP数组Key强制类型转换实现原理解析
Sep 01 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
php利用cookie实现访问次数统计代码
2011/05/19 PHP
php密码生成类实例
2014/09/24 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
2017/04/18 PHP
jquery 使用点滴函数代码
2011/05/20 Javascript
利用div+jquery自定义滚动条样式的2种方法
2013/07/18 Javascript
Js实现手机发送验证码时按钮延迟操作
2014/06/20 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
轻量级的原生js日历插件calendar.js使用指南
2015/04/28 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
2015/07/29 Javascript
Express的路由详解
2015/12/10 Javascript
深入理解JavaScript中Ajax
2016/08/02 Javascript
JS使用正则表达式实现关键字替换加粗功能示例
2016/08/03 Javascript
详解js树形控件—zTree使用总结
2016/12/28 Javascript
基于JavaScript实现评论框展开和隐藏功能
2017/08/25 Javascript
babel的使用及安装配置教程
2018/02/22 Javascript
vue瀑布流组件实现上拉加载更多
2020/03/10 Javascript
JavaScript中ES6规范中let和const的用法和区别
2020/08/06 Javascript
[01:33:14]LGD vs VP Supermajor 败者组决赛 BO3 第二场 6.10
2018/07/04 DOTA
Python MD5文件生成码
2009/01/12 Python
详解在Python的Django框架中创建模板库的方法
2015/07/20 Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
python 获取指定文件夹下所有文件名称并写入列表的实例
2018/04/23 Python
Python输出\u编码将其转换成中文的实例
2018/12/15 Python
在Python运行时动态查看进程内部信息的方法
2019/02/22 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
Python 字符串、列表、元组的截取与切片操作示例
2019/09/17 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
Python实现简单的2048小游戏
2021/03/01 Python
关于递归的一道.NET面试题
2013/05/12 面试题
元宵节主持词
2014/03/25 职场文书
竞选大队委员演讲稿
2014/04/28 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
体育教师个人总结
2015/02/09 职场文书
浅谈什么是SpringBoot异常处理自动配置的原理
2021/06/21 Java/Android
HTML+CSS实现导航条下拉菜单的示例代码
2021/08/02 HTML / CSS