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

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

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

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


 

在使用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,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
8天前
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
6天前
|
存储 弹性计算 数据管理
阿里云对象存储OSS收费标准,存储、流量和请求等多个计费项
阿里云对象存储OSS提供按量付费与包年包月两种计费方式,涵盖存储、流量、请求等费用。标准存储按量付费0.09元/GB/月,包年包月40GB起售,价格9元/年。公网流量出方向收费,内网及上传免费。具体费用视使用情况而定,详情见官网。
|
2月前
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
137 9
|
3月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之上传素材文件不在同一地域的OSS,怎么上传多张图片
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
43 1
|
3月前
|
存储 JavaScript 前端开发
Vue中实现图片上传,上传后的图片回显,存储图片到服务器 【使用对象存储OSS】
这篇文章介绍了在Vue中实现图片上传到阿里云OSS对象存储服务的完整流程,包括服务端签名直传的前提知识、后端设置、前端组件封装以及图片上传和回显的效果展示。
|
3月前
|
存储 机器学习/深度学习 弹性计算
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
|
3月前
|
存储 运维 Serverless
函数计算产品使用问题之OSS触发器是否可以只设置文件前缀
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
3月前
|
敏捷开发 数据可视化 测试技术
阿里云云效产品使用合集之怎么在php composer安装自己服务器的代码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
存储 Java 关系型数据库
实时计算 Flink版产品使用问题之以jar包方式同步数据是否需要定义存储oss的位置
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
4月前
|
机器学习/深度学习 人工智能 专有云
人工智能平台PAI使用问题之怎么将DLC的数据写入到另一个阿里云主账号的OSS中
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。