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 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
Nov 14 PHP
PHP-Fcgi下PHP的执行时间设置方法
Aug 02 PHP
php使用sql数据库 获取字段问题介绍
Aug 12 PHP
php版淘宝网查询商品接口代码示例
Jun 17 PHP
PHP数组中头部和尾部添加元素的方法(array_unshift,array_push)
Apr 10 PHP
PHP实现ASCII码与字符串相互转换的方法
Apr 29 PHP
2017年最好用的9个php开发工具推荐(超好用)
Oct 23 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
May 12 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
Nov 14 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 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
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
Yii2下点击验证码的切换实例代码
2017/03/14 PHP
php连接mysql数据库最简单的实现方法
2019/09/24 PHP
Yii框架布局文件的动态切换操作示例
2019/11/11 PHP
JS 各种网页尺寸判断实例方法
2013/04/18 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
javascript作用域和闭包使用详解
2014/04/25 Javascript
Javascript玩转继承(三)
2014/05/08 Javascript
浅谈JavaScript的Polymer框架中的behaviors对象
2015/07/29 Javascript
js模式化窗口问题![window.dialogArguments]
2016/10/30 Javascript
JS与jQuery实现子窗口获取父窗口元素值的方法
2017/04/17 jQuery
JavaScript手风琴页面制作
2017/05/17 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
2020/05/19 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
2020/08/14 Javascript
[01:05:52]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第一场 2月2日
2021/03/11 DOTA
Python日志模块logging简介
2015/04/13 Python
浅谈Python 中整型对象的存储问题
2016/05/16 Python
轻松实现TensorFlow微信跳一跳的AI
2018/01/05 Python
Django 大文件下载实现过程解析
2019/08/01 Python
python实现抠图给证件照换背景源码
2019/08/20 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
彪马英国官网:PUMA英国
2019/02/11 全球购物
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
英国家居用品和床上用品零售商:P&B Home
2020/01/16 全球购物
估算杭州有多少软件工程师
2015/08/11 面试题
几道Java和数据库的面试题
2013/05/30 面试题
护理学应聘自荐书范文
2014/02/05 职场文书
2014年公司迎新年活动方案
2014/02/24 职场文书
国际商贸专业自荐信
2014/06/09 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
运动会100米广播稿
2015/08/19 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python