测试阿里云OSS
2016-05-26 09:25
239 查看
说明:开通阿里云OSS,下载PHP SDK,修改信息
在根目录下创建一个index.php
<?php //conf.inc.php define('OSS_ACCESS_ID', '你的ID'); define('OSS_ACCESS_KEY', '你的KEY'); define('OSS_ENDPOINT', 'oss-cn-hongkong.aliyuncs.com');//所在区域,本站在香港空间,选择相应的 define('OSS_TEST_BUCKET', 'phplee'); //默认BUCKET,自己在OSS上创建一个,然后再这里设置 ?>
在根目录下创建一个index.php
<?php require_once './sdk.class.php'; require_once './util/oss_util.class.php'; //关于endpoint的介绍见, endpoint就是OSS访问的域名 //http://docs.aliyun.com/?spm=5176.7114037.1996646101.11.XMMlZa&pos=6#/oss/product-documentation/domain-region class SampleUtil { const endpoint = OSS_ENDPOINT; const accessKeyId = OSS_ACCESS_ID; const accesKeySecret = OSS_ACCESS_KEY; const bucket = OSS_TEST_BUCKET; public static function get_oss_client() { $oss = new ALIOSS(self::accessKeyId, self::accesKeySecret, self::endpoint); return $oss; } public static function my_echo($msg) { $new_line = " \n"; echo $msg . $new_line; } public static function get_bucket_name() { return self::bucket; } public static function create_bucket() { $oss = self::get_oss_client(); $bucket = self::get_bucket_name(); $acl = ALIOSS::OSS_ACL_TYPE_PUBLIC_READ; $res = $oss->create_bucket($bucket, $acl); $msg = "创建bucket " . $bucket; OSSUtil::print_res($res, $msg); } } //初始化 header("Content-Type: text/html; charset=UTF-8"); date_default_timezone_set('Asia/Shanghai'); $oss = SampleUtil::get_oss_client(); $bucket = SampleUtil::get_bucket_name(); exit; //上传图片 $object = "test/a.jpg"; $file_path = './1.jpg'; $url="http://".OSS_TEST_BUCKET.".".OSS_ENDPOINT."/".$object; $options = array(); $res = $oss->upload_file_by_file($bucket, $object, $file_path, $options); $msg = "上传本地文件 :" . $file_path . " 到 /" . $bucket . "/" . $object." url:".$url; OSSUtil::print_res($res, $msg); echo "<img src=\"".$url."\">"; exit; //创建文件夹 $object = "test"; $res = $oss->create_object_dir($bucket, $object); $msg = "创建模拟文件夹 /" . $bucket . "/" . $object; OSSUtil::print_res($res, $msg); exit; //列出Bucket内所有文件 递归列出目录下所有文件 $prefix = ''; $marker = ''; $delimiter = ''; $next_marker = ''; $maxkeys = 1000; $index = 1; while (true) { $options = array( 'delimiter' => $delimiter, 'prefix' => $prefix, 'max-keys' => $maxkeys, 'marker' => $next_marker, ); $res = $oss->list_object($bucket, $options); $msg = "列出Bucket内所有文件" . $bucket; OSSUtil::print_res($res, $msg); if ($res->isOk()){ $body = $res->body; $tmp_object_list = OSSUtil::get_object_list_marker_from_xml($body, $next_marker); //打印出所有的object名称 foreach ($tmp_object_list as $key) { SampleUtil::my_echo("No. " . $index . " ; : " . $key."<br />"); $index++; } } if (empty($next_marker)) { break; } } exit;
相关文章推荐
- 临时
- eclipse3.7 安装github插件错误解决
- 根目录扩展
- AFNetwork 作用和用法详解
- YII页面缓存
- php 数组 常用函数
- java maven诡异的错误no class found
- velocity 利用 HttpServletRequest 参数
- C#清除HTML标签方法汇总
- 2 method http call in controller in AngularJS
- linux配置网络详细解析,上外网
- centos升级glibc过程
- PL/SQL Developer使用技巧、快捷键
- 窗体程序 (控件随窗体变化而变化)
- 《上古天真论》第十四讲文字版
- Leetcode 之Length of Last Word(37)
- 自定义BOL组件集
- 数据库sharding-基本策略和原理
- 第13周项目1:分数类中的运算符重载(1)
- Leetcode 206. Reverse Linked List