{"id":19039836,"url":"https://github.com/johnlui/aliyunoss","last_synced_at":"2025-04-08T00:37:58.313Z","repository":{"id":25432362,"uuid":"28861951","full_name":"johnlui/AliyunOSS","owner":"johnlui","description":"阿里云 OSS 官方 SDK 的 Composer 封装，支持任何 PHP 项目，包括 Laravel、Symfony、TinyLara 等等。","archived":false,"fork":false,"pushed_at":"2020-06-19T04:46:43.000Z","size":298,"stargazers_count":489,"open_issues_count":5,"forks_count":189,"subscribers_count":25,"default_branch":"master","last_synced_at":"2024-05-18T17:45:01.999Z","etag":null,"topics":["aliyun","aliyun-oss","laravel","oss","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/johnlui.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-06T12:13:19.000Z","updated_at":"2024-03-28T11:56:40.000Z","dependencies_parsed_at":"2022-07-26T07:01:58.285Z","dependency_job_id":null,"html_url":"https://github.com/johnlui/AliyunOSS","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlui%2FAliyunOSS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlui%2FAliyunOSS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlui%2FAliyunOSS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlui%2FAliyunOSS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johnlui","download_url":"https://codeload.github.com/johnlui/AliyunOSS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247755560,"owners_count":20990620,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aliyun","aliyun-oss","laravel","oss","php"],"created_at":"2024-11-08T22:19:02.819Z","updated_at":"2025-04-08T00:37:58.291Z","avatar_url":"https://github.com/johnlui.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"AliyunOSS\n---------\n\n```\n    ___     __    _                                    ____    _____   _____\n   /   |   / /   (_)   __  __  __  __   ____          / __ \\  / ___/  / ___/\n  / /| |  / /   / /   / / / / / / / /  / __ \\        / / / /  \\__ \\   \\__ \\\n / ___ | / /   / /   / /_/ / / /_/ /  / / / /       / /_/ /  ___/ /  ___/ /\n/_/  |_|/_/   /_/    \\__, /  \\__,_/  /_/ /_/        \\____/  /____/  /____/\n                    /____/\n```\n\nAliyunOSS 是阿里云 OSS 官方 SDK 的 Composer 封装，支持任何 PHP 项目，包括 Laravel、Symfony、TinyLara 等等。\n\n#### 适配 Laravel 7 的新包已经发布：[AliyunOSS-Laravel7](https://github.com/johnlui/AliyunOSS-Laravel7)\n\n## 更新记录\n\n* 2017-03-08 `Release v2.0.0` v2 发布，在 API 易用性上进行了大量优化\n* 2016-09-12 `Release v1.3.5` 加入文件元信息的设置功能\n* 2016-07-20 `Release v1.3.4` 加入文件元信息的获取功能\n* 2016-01-31 `Release v1.3.2` 获取指定虚拟文件夹下的所有文件\n* 2015-10-23 `Release v1.3` 增加删除、复制、移动文件功能\n* 2015-08-07 `Release v1.2` 修复内存泄露 bug\n* 2015-01-12 `Release v1.1` 增加内外网配置分离\n* 2015-01-09 `Release v1.0` 完善功能，增加 Laravel 框架详细使用教程及代码\n\n## 安装\n\n安装有两种方式：\n\n### ① 直接编辑配置文件\n\n将以下内容增加到 composer.json：\n\n```json\nrequire: {\n    \"johnlui/aliyun-oss\": \"~2.0\"\n}\n```\n\n然后运行 `composer update`。\n\n### ② 执行命令安装\n\n运行命令：\n\n```bash\ncomposer require johnlui/aliyun-oss:~2.0\n```\n\n## 使用（以 Laravel 为例）\n\n### 构建 Service 文件\n\n新建 `app/services/OSS.php`，内容可参考：[OSS.php](https://github.com/johnlui/AliyunOSS/blob/master/example/OSS.php)，然后修改配置：\n\n```php\n... ...\n\n  private $city = '青岛';\n\n  // 经典网络 or VPC\n  private $networkType = '经典网络';\n  \n  private $AccessKeyId = '';\n  private $AccessKeySecret = '';\n\n... ...\n```\n\n### 放入自动加载\n\n#### 遵循 psr-0 的项目（如Laravel 4、CodeIgniter、TinyLara）中：\n在 `composer.json` 中 `autoload -\u003e classmap` 处增加配置：\n\n```json\n\"autoload\": {\n    \"classmap\": [\n      \"app/services\"\n    ]\n  }\n```\n然后运行 `composer dump-autoload`。\n\n#### 遵循 psr-4 的项目（如 Laravel 5、Symfony）中：\n\n无需配置，保证目录 `App/Services` 和命名空间 `namespace App\\Services;` 一致即可自动加载。\n\n### 使用\n\n```php\nuse App\\Services\\OSS;\n\n// 在外网上传一个文件并指定 options 如：Content-Type 类型\n// 更多 options 见：https://github.com/johnlui/AliyunOSS/blob/master/src/oss/src/Aliyun/OSS/OSSClient.php#L142-L148\nOSS::publicUpload('bucket', '目标 object 名', '本地文件绝对路径', [\n    'ContentType' =\u003e 'application/pdf',\n    ... ...\n]);\n```\n\n更多用法等待着你去[发现](https://github.com/johnlui/AliyunOSS/blob/master/example/OSS.php)。\n\n### Symfony 3 用法示例\n\n如果你正在使用基于 Symfony 创建的第三方应用程序，而又恰好不懂命名空间及 Composer 自动加载，那么看下面就知道本库在 Symfony 中的用法了：\n\n#### 构建 Service 文件\n\n新建 `src/AppBundle/Services/OSS.php`，内容参考：[OSS.php](https://github.com/johnlui/AliyunOSS/blob/master/example/OSS.php)。\n\n修改顶部的命名空间为 `namespace AppBundle\\Services;`。\n\n#### 放入自动加载\n\n无需配置。\n\n#### 使用\n\n```php\nuse AppBundle\\Services\\OSS;\n\nOSS::publicUpload('bucket', '目标 object 名', '本地文件绝对路径');\n```\n\n## 反馈\n\n有问题请到 http://lvwenhan.com/laravel/425.html 下面留言。\n\n## License\n除 “版权所有（C）阿里云计算有限公司” 的代码文件外，遵循 [MIT license](http://opensource.org/licenses/MIT) 开源。\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnlui%2Faliyunoss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohnlui%2Faliyunoss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnlui%2Faliyunoss/lists"}