romeroqe / giphy-and-stickers
一个提供Laravel和Giphy API接口的包,包括Gifs和Stickers。
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-28 20:25:16 UTC
README
一个提供Laravel和Laravel以及Giphy API之间接口的包,包括Gifs和Stickers。
安装
Composer
首先,通过Composer拉取此包。
“require”: { ... "romeroqe/giphy-and-stickers": "dev-master" }
然后运行composer
$ composer update
提供者
安装完成后,您需要将服务提供者注册到应用程序中。打开config/app.php文件,找到providers键。
'providers' => [ ... Romeroqe\Giphy\GiphyServiceProvider::class, Romeroqe\Giphy\StickersServiceProvider::class, ]
外观
此包还包含一个外观,它提供了静态语法。您可以在config/app.php文件的别名键中注册外观。
'aliases' => [ ... 'Giphy' => Romeroqe\Giphy\GiphyFacade::class, 'Stickers' => Romeroqe\Giphy\StickersFacade::class, ]
快速示例
有关更多信息,请参阅文档。
参数
- q - 搜索查询词或短语
- s - 搜索查询词或短语
- limit - (可选)返回的结果数量,最大100。默认25。
- offset - (可选)结果偏移量,默认为0。
- rating - (可选)限制结果为那些有评分的(y,g, pg, pg-13或r)。
- lang - (可选)指定区域内容的默认国家;格式为2字母ISO 639-1国家代码。请参阅支持的语言列表这里
端点
Gifs
搜索
搜索所有Giphy GIFs中的单词或短语。标点将被移除并忽略。在这个例子中,$giphys是一个数组。
方法: Giphy::search($query, $limit = 25, $offset = 0, $rating = null, $lang = null)
$giphys = Giphy::search('cat'); foreach ($giphys->data as $giphy) { // Get id $giphy->id; // Get image original url $giphy->images->original->url; // Get image original mp4 url $giphy->images->original->mp4; //etc }
您可以通过dd($giphys)查看所有属性
{#162 ▼
+"data": array:25 [▼
0 => {#163 ▼
+"type": "gif"
+"id": "W80Y9y1XwiL84"
+"slug": "gift-W80Y9y1XwiL84"
+"url": "http://giphy.com/gifs/gift-W80Y9y1XwiL84"
...
}
1 => {#182 ▶}
2 => {#202 ▶}
...
翻译
翻译API利用搜索,但使用Giphy的“特殊调味料”来处理从一种词汇表到另一种词汇表的翻译。
方法: Giphy::translate($query, $rating = null, $lang = null)
$giphy= Giphy::translate('cat'); // Get id $giphy->data->id; // Get image original url $giphy->data->images->original->url; // Get image original mp4 url $giphy->data->images->original->mp4; //etc
您可以通过dd($giphy)查看所有属性
{#162 ▼
+"data": {#163 ▼
+"type": "gif"
+"id": "3oz8xQQP4ahKiyuxHy"
...
+"images": {#165 ▼
...
+"original": {#180 ▼
+"url": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.gif"
+"width": "480"
+"height": "352"
+"size": "3795005"
+"frames": "33"
+"mp4": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.mp4"
+"mp4_size": "132229"
+"webp": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.webp"
+"webp_size": "756840"
}
...
趋势
获取当前在线趋势的GIFs。在这个例子中,$giphys是一个数组。
方法: Giphy::trending($limit = 25, $rating = null)
$giphys = Giphy::trending(); foreach ($giphys->data as $giphy) { // Get id $giphy->id; // Get image original url $giphy->images->original->url; // Get image original mp4 url $giphy->images->original->mp4; //etc }
您可以通过dd($giphys)查看所有属性
{#162 ▼
+"data": array:25 [▼
0 => {#163 ▼
+"type": "gif"
+"id": "l2SqiAELInKQ8rF0Q"
+"slug": "2dopequeens-podcast-2-dope-queens-l2SqiAELInKQ8rF0Q"
+"url": "http://giphy.com/gifs/2dopequeens-podcast-2-dope-queens-l2SqiAELInKQ8rF0Q"
...
}
1 => {#183 ▶}
2 => {#203 ▶}
...
随机
返回一个随机GIF,限制为标签。
方法: Giphy::random($query, $rating = null)
$giphy = Giphy::random('cat'); // Get id $giphy->data->id; // Get image original url $giphy->data->image_original_url; // Get image mp4 url $giphy->data->image_mp4_url; //etc
您可以通过dd($giphy)查看所有属性
{#162 ▼
+"data": {#163 ▼
+"type": "gif"
+"id": "qbpRDgYI5JoKk"
+"url": "http://giphy.com/gifs/cat-qbpRDgYI5JoKk"
+"image_original_url": "https://media0.giphy.com/media/qbpRDgYI5JoKk/giphy.gif"
...
}
+"meta": {#164 ▼
+"status": 200
+"msg": "OK"
}
}
通过ID
通过GIF ID返回关于GIF的元数据。
方法: Giphy::getByID($id)
$giphy= Giphy::getByID('qbpRDgYI5JoKk'); // Get id $giphy->data->id; // Get image original url $giphy->data->images->original->url; // Get image original mp4 url $giphy->data->images->original->mp4; //etc
您可以通过dd($giphy)查看所有属性
{#162 ▼
+"data": {#163 ▼
+"type": "gif"
+"id": "qbpRDgYI5JoKk"
...
+"images": {#164 ▼
...
+"original": {#179 ▼
+"url": "https://media1.giphy.com/media/qbpRDgYI5JoKk/giphy.gif"
+"width": "500"
...
通过ID
这是get GIF by ID端点的多版本。在这个例子中,$giphys是一个数组。
方法: Giphy::getByIDs(array $ids)
$giphys = Giphy::getByIDs(['qbpRDgYI5JoKk','FiGiRei2ICzzG']); foreach ($giphys->data as $giphy) { // Get id $giphy->id; // Get image original url $giphy->images->original->url; // Get image original mp4 url $giphy->images->original->mp4; //etc }
您可以通过dd($giphys)查看所有属性
{#162 ▼
+"data": array:2 [▼
0 => {#163 ▼
+"type": "gif"
+"id": "qbpRDgYI5JoKk"
+"slug": "cat-qbpRDgYI5JoKk"
...
}
1 => {#182 ▼
+"type": "gif"
+"id": "FiGiRei2ICzzG"
+"slug": "funny-cat-FiGiRei2ICzzG"
...
贴纸
贴纸的方法与Giphy类似,所以我将省略dd()的示例,但您也可以使用它来查看对象的全部属性。
贴纸搜索
搜索所有贴纸中的单词或短语。标点将被移除并忽略。在这个例子中,$stickers是一个数组。
方法: Stickers::search($query, $limit = 25, $offset = 0, $rating = null, $lang = null)
$stickers = Stickers::search('dog'); foreach ($stickers->data as $sticker) { // Get id $sticker->id; // Get image original url $sticker->images->original->url; // Get image original mp4 url $sticker->images->original->mp4; //etc }
贴纸翻译
翻译API利用搜索,但使用贴纸的“特殊调味料”来处理从一种词汇表到另一种词汇表的翻译。
方法: Stickers::translate($query, $rating = null, $lang = null)
$sticker= Stickers::translate('cat'); // Get id $sticker->data->id; // Get image original url $sticker->data->images->original->url; // Get image original mp4 url $sticker->data->images->original->mp4; //etc
贴纸趋势
抓取当前网络上流行的贴纸。在此例中,$stickers是一个数组。
方法:Stickers::trending($limit = 25, $rating = null)
$stickers = Stickers::trending(); foreach ($stickers->data as $sticker) { // Get id $sticker->id; // Get image original url $sticker->images->original->url; // Get image original mp4 url $sticker->images->original->mp4; //etc }
贴纸随机
按标签限制返回一个随机的贴纸。
方法:Stickers::random($query, $rating = null)
$sticker = Stickers::random('cat'); // Get id $sticker->data->id; // Get image original url $sticker->data->image_original_url; // Get image mp4 url $sticker->data->image_mp4_url; //etc