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 smarty截取中文字符乱码问题?gb2312/utf-8
Nov 07 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
May 05 PHP
phpexcel导出excel的颜色和网页中的颜色显示不一致
Dec 11 PHP
关于php正则匹配汉字的方法介绍
Apr 25 PHP
php fsockopen伪造post与get方法的详解
Jun 14 PHP
PHP提示Cannot modify header information - headers already sent by解决方法
Sep 22 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
php使用cookie保存用户登录的用户名实例
Jan 26 PHP
php实现中文字符截取防乱码方法汇总
Apr 29 PHP
PHP filesize函数用法浅析
Feb 15 PHP
php实现分页功能的详细实例方法
Sep 29 PHP
对laravel in 查询的使用方法详解
Oct 09 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/02 无线电
php对数组排序代码分享
2014/02/24 PHP
PHP抓取、分析国内视频网站的视频信息工具类
2014/04/02 PHP
php实现json编码的方法
2015/07/30 PHP
学习php设计模式 php实现单例模式(singleton)
2015/12/07 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
PHP如何使用JWT做Api接口身份认证的实现
2020/02/03 PHP
showModelessDialog()使用详解
2006/09/07 Javascript
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
jquery插件jSignature实现手动签名
2015/05/04 Javascript
javascript实现别踩白块儿小游戏程序
2015/11/22 Javascript
JS公共小方法之判断对象是否为domElement的实例
2016/11/25 Javascript
JS访问DOM节点方法详解
2016/11/29 Javascript
深入理解js中的加载事件
2017/02/08 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
js实现移动端导航点击自动滑动效果
2017/07/18 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
2018/01/09 Javascript
[40:29]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第一场
2018/04/10 DOTA
Python ORM框架SQLAlchemy学习笔记之关系映射实例
2014/06/10 Python
Python安装Numpy和matplotlib的方法(推荐)
2017/11/02 Python
Django uwsgi Nginx 的生产环境部署详解
2019/02/02 Python
Python multiprocess pool模块报错pickling error问题解决方法分析
2019/03/20 Python
解决python 找不到module的问题
2020/02/12 Python
python代码如何注释
2020/06/01 Python
css3背景_动力节点Java学院整理
2017/07/11 HTML / CSS
纯CSS3制作漂亮带动画效果的主机价格表
2015/04/25 HTML / CSS
英国马匹装备和马术用品购物网站:Equine Superstore
2019/03/03 全球购物
兰蔻英国官网:Lancome英国
2019/04/30 全球购物
奢华的意大利皮革手袋:Bene Handbags
2019/10/29 全球购物
汽车工程专业应届生求职信
2013/10/19 职场文书
局机关干部群众路线个人对照检查材料思想汇报
2014/10/05 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
vue项目多环境配置(.env)的实现
2021/07/21 Vue.js
浅析CSS在DevTools 中架构演变
2021/10/05 HTML / CSS