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 相关文章推荐
操作Oracle的php类
Oct 09 PHP
默默简单的写了一个模板引擎
Jan 02 PHP
php 破解防盗链图片函数
Dec 09 PHP
php expects parameter 1 to be resource, array given 错误
Mar 23 PHP
PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
Apr 09 PHP
解析php 版获取重定向后的地址(代码)
Jun 26 PHP
学习php设计模式 php实现命令模式(command)
Dec 08 PHP
Yii操作数据库实现动态获取表名的方法
Mar 29 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
PHP abstract 抽象类定义与用法示例
May 29 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
Jan 28 PHP
php数组函数array_push()、array_pop()及array_shift()简单用法示例
Jan 26 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传值到不同页面的三种常见方式及php和html之间传值问题
2015/11/19 PHP
PHP5.3新特性小结
2016/02/14 PHP
PHP性能优化大全(php.ini)
2016/05/20 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
2019/03/11 PHP
javascript自定义函数参数传递为字符串格式
2014/07/29 Javascript
jscript读写二进制文件的方法
2015/04/22 Javascript
基于JS实现Android,iOS一个手势动画效果
2016/04/27 Javascript
jquery实现ajax提交表单信息的简单方法(推荐)
2016/08/24 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
在vue中通过axios异步使用echarts的方法
2018/01/13 Javascript
javascript实现计算器功能
2020/03/30 Javascript
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python3编写C/S网络程序实例教程
2014/08/25 Python
python urllib爬取百度云连接的实例代码
2017/06/19 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
python 从文件夹抽取图片另存的方法
2018/12/04 Python
python使用magic模块进行文件类型识别方法
2018/12/08 Python
自学python的建议和周期预算
2019/01/30 Python
Python根据字典的值查询出对应的键的方法
2020/09/30 Python
五个2015 年最佳HTML5 框架
2015/11/11 HTML / CSS
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
比利时香水网上商店:NOTINO
2018/03/28 全球购物
材料成型专业个人求职信范文
2013/09/25 职场文书
大学毕业生文采飞扬的自我鉴定
2013/12/03 职场文书
中医专业职业生涯规划书范文
2014/01/04 职场文书
《假如》教学反思
2014/04/17 职场文书
大专生求职信
2014/06/29 职场文书
食品药品安全责任书
2015/05/11 职场文书
运动会观后感
2015/06/09 职场文书
mysql部分操作
2021/04/05 MySQL
css3实现的加载动画效果
2021/04/07 HTML / CSS
javascript对象3个属性特征
2021/11/17 Javascript
Python中的 Set 与 dict
2022/03/13 Python
nginx配置指令之server_name的具体使用
2022/08/14 Servers