PHP 阿里云OSS存储

/**
 * 文件上传接口
 *
 */
public function uploadFile()
{
    //接收上传文件
    $data = $this->request->param();
    $file = $this->request->file('file');
    if($_FILES['file']['size']> sysconfig('upload', 'upload_allow_size'))  return json(['code' => 1, 'msg' => '上传文件不能超过500M', 'data' => '']);
    $file_info = pathinfo($_FILES['file']['name']);

    //拼接文件名
    $file_name = $data['openid'] . sha1(date('YmdHis', time()) . uniqid()) . '.' . $file_info['extension'];

    //调用阿里云OSS上传
    $res = self::AliuploadFile($file_name, $file, $data['type']);
    if ($res != '') {
        return json(['code' => 1, 'msg' => 'succeed', 'data' => $res]);
    }
}

/**
 * 存储文件
 *
 * @param $srcFile
 * @param $desFile
 * @throws Exception
 */
public function AliuploadFile($module, $file, $type)
{
    //配置
    $accessKeyId = sysconfig('upload', 'alioss_access_key_id');
    $accessKeySecret = sysconfig('upload', 'alioss_access_key_secret');
    $endpoint = sysconfig('upload', 'alioss_endpoint');
    $bucket = sysconfig('upload', 'alioss_bucket');
    if ($type == 1) {
        $object = "upload/images/" . $module;
    } else {
        $object = "upload/video/" . $module;
    }

    $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
    $updata = $ossClient->uploadFile($bucket, $object, $file);

    if (isset($updata['info']['url']) != '') {
        return contentFormat($updata['info']['url']);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
阿里云OSS存储提供了多种API接口和SDK,其中PHP SDK是阿里云官方提供的一种使用PHP语言访问OSS存储的工具。你可以按照以下步骤进行编写: 1. 下载PHP SDK。 你可以在阿里云官网上下载PHP SDK,解压后将SDK文件夹放到你的项目目录中。 2. 引入autoload.php文件 在你的PHP代码开头,引入autoload.php文件,例如: ```php require_once '/path/to/aliyun-oss-php-sdk/autoload.php'; ``` 3. 配置AccessKeyId和AccessKeySecret 在使用OSS API之前,请确保已经申请了OSS服务,并拥有AccessKeyId和AccessKeySecret。在使用SDK之前,需要将这两个参数配置到SDK中。可以在代码中通过如下方式进行配置: ```php $accessKeyId = 'yourAccessKeyId'; $accessKeySecret = 'yourAccessKeySecret'; $endpoint = 'http://oss-cn-hangzhou.aliyuncs.com'; // OSS节点地址,根据实际情况填写 $bucket = 'yourBucketName'; // 填写你的Bucket名称 $ossClient = new \OSS\OssClient($accessKeyId, $accessKeySecret, $endpoint); ``` 4. 上传文件 在使用OSS存储时,最基本的操作就是上传文件。使用PHP SDK,你可以通过以下代码上传文件: ```php $object = 'yourObjectName'; // 上传到OSS的文件名 $content = 'yourContent'; // 文件内容,可以是字符串或者二进制数据 $ossClient->putObject($bucket, $object, $content); ``` 其中,$bucket为Bucket名称,$object为上传到OSS的文件名,$content为文件内容。 5. 下载文件 你可以通过以下代码从OSS存储中下载文件: ```php $object = 'yourObjectName'; // 要下载的文件名 $content = $ossClient->getObject($bucket, $object); ``` 其中,$bucket为Bucket名称,$object为要下载的文件名,$content为文件内容。 以上是使用阿里云OSS存储PHP代码编写方法,你可以根据实际需求进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值