一分钟了解阿里云产品:PHP实现阿里云存储OSS

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介:

OSS发布一段时间了,下面我来说说应用OSS的一方面体验吧。

首先需要在阿里云中建立一个帐户。建立好帐户后,在管理控制台获取OSS的密钥。

dcd31b9aea5938ab92f647e512c17c070cd19bad

 

在使用OSS时,我的PHP页面需要这些密钥值。管理这些信息的一种方法就是将这些密钥值放到我的代码里。

 

例1: 在PHP代码中存储OSS密钥。

//ACCESS_ID

define('OSS_ACCESS_ID', '8k7tbj64zwxpfq50');

 

//ACCESS_KEY

define('OSS_ACCESS_KEY', 'qvD Gyji7AiMePs8dg=');

 

这种方法是有效的,但是我们必须将代码放入到每一个有需要的PHP文件中。更好的做法是将这些密钥值放入到一个oss.ini文件,该文件类似例2所示:

 

例2: 在oss.ini中存储OSS密钥。

[oss]

access_id="8k7tbj64zwxpfq50"

access_key="qvD Gyji7AiMePs8dg="

[oss2]

access_id="lo90jhgj64zwxpkkjkdui5"

access_key="qvD Gyji7AiMePs8dgasgade"

 

一个简单的PHP类可以轻松地处理这些值:

 

例3: 用于检索OSS密钥的简单PHP类:(Credentials.php)。

 

//Simple class to retrieve credentials from an .ini file

class Credentials

{

  var $key_array;

  function Credentials(){

    $this -> key_array = parse_ini_file("oss.ini", true);

  }

  function getCredential($group, $key){

    return $this -> key_array[$group][$key];

  }

}

 

该类使用PHP parse_ini_file()函数读取.ini文件格式的值。此函数的第一个参数必需,规定要检查的ini文件;第二个参数可选,如果设置为 true,则返回一个多维数组,包括了配置文件中每一节的名称和设置,默认是false。这意味着数组$key_array是一个二维数组。数组键为第一维的oss和oss2(可存放多个OSS帐户),以及第二维的 access_id、access_key等。Credentials类提供了getCredential()方法来从.ini文件检索值。与将凭证硬编码到每一个PHP文件相反,我们使用类似如下所示的代码:

 

例4: 创建和使用一个Credentials对象。

require_once 'oss_php_sdk/sdk.class.php';

require_once '../conf/Credentials.php';

$creds = new Credentials;

$oss_sdk_service=newALIOSS($creds->getCredential('oss','access_id'),

$creds->getCredential('oss', 'access_key'));

 

使用这种方法需要花多一点时间来设置我的代码,但是一旦完成了此项工作,我就在一个位置一次性地定义了我的OSS密钥。如果需要修改它们,我就不必在每个PHP文件中进行修改。

 

 

如果您想详细了解OSS,请访问:

https://bbs.aliyun.com/read/111669.html?pos=1

 

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
24天前
|
对象存储
minio临时凭证直传切换到阿里云oss
minio临时凭证直传切换到阿里云oss
50 1
|
1天前
|
Rust 开发工具 对象存储
一个Rust编写的,非官方的阿里云OSS SDK
Rust初学者,边学边写了个阿里云非官方的sdk,欢迎批评指正 8)
18 2
|
2天前
|
存储 Oracle 关系型数据库
Typora+PicGo+super-prefix+阿里云OSS设置图床
Typora+PicGo+super-prefix+阿里云OSS设置图床
|
23天前
|
域名解析 应用服务中间件 对象存储
解决阿里云oss图片浏览器访问直接下载而不是打开
解决阿里云oss图片浏览器访问直接下载而不是打开
41 0
|
24天前
|
对象存储
阿里云oss-cloud-sdk-springboot3兼容问题
阿里云oss-cloud-sdk-springboot3兼容问题
23 0
|
1月前
|
消息中间件 PHP 开发工具
阿里云OpenAPI RocketMQ 5.0的PHP收发消息文档可以在阿里云开发者门户中找到
【1月更文挑战第22天】【1月更文挑战第108篇】阿里云OpenAPI RocketMQ 5.0的PHP收发消息文档可以在阿里云开发者门户中找到
35 6
|
1月前
|
NoSQL Java 微服务
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)-3
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)
88 1
|
1月前
|
前端开发 NoSQL easyexcel
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)-2
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)
80 0
|
1月前
|
NoSQL 应用服务中间件 对象存储
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)-1
前后端分离项目知识汇总(阿里云Oss,EasyExcel,视频点播,SpringCloud,Redis,Nuxt)
57 0
|
1月前
|
存储 人工智能 API
阿里云视觉智能开放平台的OSS视频处理
阿里云视觉智能开放平台的OSS视频处理

热门文章

最新文章