cetteup/unsplash
Composer 安装命令:
composer require cetteup/unsplash
包简介
Unofficial PHP wrapper to access the Unsplash API
README 文档
README
An unofficial PHP wrapper to access the Unsplash API, focused on API call efficiency and ease of use.
Note: This wrapper only supports public actions.
Installation
Unsplash-PHP uses Composer. To use it, require the library
composer require cetteup/unsplash
Usage
Configuration
Before you can start making calls to the API, you need to configure the client with your application ID.
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID');
API methods
Please refer to the official documentation for more detailed information on the response structures.
Cetteup\Unsplash\HttpClient->user_find($username)
Retrieve public details on a given user.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$username |
string | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $user = $unsplash->user_find('cetteup');
Cetteup\Unsplash\HttpClient->user_portfolio_link($username)
Retrieve a single user’s portfolio link.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$username |
string | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $link = $unsplash->user_portfolio_link('cetteup');
Cetteup\Unsplash\HttpClient->user_photos($username, $page, $per_page, $order_by, $stats, $resolution, $quantity, $orientation)
Get a list of photos uploaded by a user.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$username |
string | Required | |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) | |
$order_by |
string | Opt (Default: latest) | Accepted values: latest, oldest, popular |
$stats |
bool | Opt (Default: false) | |
$resolution |
string | Opt (Default: days) | Accepted values: days |
$quantity |
int | Opt (Default: 30) | |
$orientation |
string | Opt | Accepted values: landscape, portrait, squarish |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photos = $unsplash->user_photos('cetteup', 2, 30, 'oldest');
Cetteup\Unsplash\HttpClient->user_likes($username, $page, $per_page, $order_by, $orientation)
Get a list of photos liked by a user.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$username |
string | Required | |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) | |
$order_by |
string | Opt (Default: latest) | Accepted values: latest, oldest, popular |
$orientation |
string | Opt | Accepted values: landscape, portrait, squarish |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photos = $unsplash->user_likes('cetteup', 2, 20, 'popular');
Cetteup\Unsplash\HttpClient->user_collections($username, $page, $per_page)
Get a list of collections created by a user.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$username |
string | Required |
$page |
int | Opt (Default: 1) |
$per_page |
int | Opt (Default: 10 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collections = $unsplash->user_collections('jlantunez', 3, 5);
Cetteup\Unsplash\HttpClient->user_statistics($username, $resolution, $quantity)
Retrieve the consolidated number of downloads, views and likes of all user’s photos, as well as the historical breakdown and average of these stats in a specific timeframe.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$username |
string | Required | |
$resolution |
string | Opt (Default: days) | Accepted values: days |
$quantity |
int | Opt (Default: 30 / Minimum: 1 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collections = $unsplash->user_statistics('cetteup', 'days', 10);
Cetteup\Unsplash\HttpClient->photo_all($page, $per_page, $order_by)
Get a single page from the list of all photos.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) | |
$order_by |
string | Opt (Default: latest) | Accepted values: latest, oldest, popular |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photos = $unsplash->photo_all(2, 30, 'oldest');
Cetteup\Unsplash\HttpClient->photo_find($id)
Retrieve a single photo.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$id |
string | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photo = $unsplash->photo_find('54t5rivyAiI');
Cetteup\Unsplash\HttpClient->photo_random($params)
Retrieve a single random photo, given optional filters.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$params |
array | Opt |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photo = $unsplash->photo_random(['orientation' => 'portrait']);
Cetteup\Unsplash\HttpClient->photo_statistics($id, $resolution, $quantity)
Retrieve total number of downloads, views and likes of a single photo, as well as the historical breakdown of these stats in a specific timeframe.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$id |
string | Required | |
$resolution |
string | Opt (Default: days) | Accepted values: days |
$quantity |
int | Opt (Default: 30 / Minimum: 1 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $stats = $unsplash->photo_statistics('54t5rivyAiI', 'days', 14);
Cetteup\Unsplash\HttpClient->photo_download($id)
Track a photo download.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$id |
string | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $unsplash->photo_download('54t5rivyAiI');
Cetteup\Unsplash\HttpClient->search_photos($search, $page, $per_page, $order_by, $content_filter, $collections, $color, $orientation)
Get a single page of photo results for a query.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$search |
string | Required | Multiple search terms need to be separated by , , or + |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) | |
$order_by |
string | Opt (Default: relevant) | Accepted values: latest, relevant |
$content_filter |
string | Opt (Default: low) | Accepted values: low, high |
$collections |
string | Opt | Multiple IDs need to be comma-separated |
$color |
string | Opt | Accepted values: black_and_white, black, white, yellow, orange, red, purple, magenta, green, teal, and blueblack_and_white, black, white, yellow, orange, red, purple, magenta, green, teal, blue |
$orientation |
string | Opt | Accepted values: landscape, portrait, squarish |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $results = $unsplash->search_photos('cats', 5, 30);
Cetteup\Unsplash\HttpClient->search_collections($search, $page, $per_page)
Get a single page of collection results for a query.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$search |
string | Required | Multiple search terms need to be separated by , , or + |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $results = $unsplash->search_collections('dogs', 10, 25);
Cetteup\Unsplash\HttpClient->search_users($search, $page, $per_page)
Get a single page of user results for a query.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$search |
string | Required | Multiple search terms need to be separated by , , or + |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $results = $unsplash->search_users('photography', 1, 15);
Cetteup\Unsplash\HttpClient->collection_all($page, $per_page)
Get a single page from the list of all collections.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$page |
int | Opt (Default: 1) |
$per_page |
int | Opt (Default: 10 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collections = $unsplash->collection_all(10, 30);
Cetteup\Unsplash\HttpClient->collection_featured($page, $per_page)
Get a single page from the list of featured collections.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$page |
int | Opt (Default: 1) |
$per_page |
int | Opt (Default: 10 / Maximum: 30) |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collections = $unsplash->collection_featured(2, 10);
Cetteup\Unsplash\HttpClient->collection_find($id)
Retrieve a single collection.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$id |
int | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collection = $unsplash->collection_find(1121542);
Cetteup\Unsplash\HttpClient->collection_photos($id, $page, $per_page, $orientation)
Retrieve a collection’s photos.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required | Note |
|---|---|---|---|
$id |
int | Required | |
$page |
int | Opt (Default: 1) | |
$per_page |
int | Opt (Default: 10 / Maximum: 30) | |
$orientation |
string | Opt | Accepted values: landscape, portrait, squarish |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $photos = $unsplash->collection_photos(1121542, 1, 10, 'squarish');
Cetteup\Unsplash\HttpClient->collection_related($id)
Retrieve a list of related collections.
Note: You need to instantiate an httpclient object first
Arguments
| Argument | Type | Opt/Required |
|---|---|---|
$id |
int | Required |
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $collections = $unsplash->collection_related(1121542);
Cetteup\Unsplash\HttpClient->stats_total()
Get a list of stats for all of Unsplash.
Note: You need to instantiate an httpclient object first
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $stats = $unsplash->stats_total();
Cetteup\Unsplash\HttpClient->stats_month()
Get the overall Unsplash stats for the past 30 days.
Note: You need to instantiate an httpclient object first
Example
$unsplash = new Cetteup\Unsplash\HttpClient('YOUR APPLICATION ID'); $stats = $unsplash->stats_month();
cetteup/unsplash 适用场景与选型建议
cetteup/unsplash 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 7 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 06 月 27 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 cetteup/unsplash 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 cetteup/unsplash 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-06-27