hiddeco/laravel-giphy

基于Guzzle的Giphy API包装器,用于Laravel和Lumen

v0.1.0-alpha 2015-06-27 22:16 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:09:32 UTC


README

LARAVEL GIPHY

Laravel Giphy是一个Giphy API包装器,用于Laravel(以及Lumen,但不要告诉任何人),提供易于访问的Giphy外观。

安装

为了不遇到麻烦使用这个包,您需要PHP 5.5+或HHVM 3.6+,以及Composer。

  1. 获取最新版本的Laravel Giphy,将以下行添加到您的composer.json文件中

    "hiddeco/laravel-giphy": "0.1.*@alpha"

  2. 运行composer updatecomposer install

  3. config/app.php中注册Laravel Giphy服务提供器,将'HiddeCo\Giphy\GiphyServiceProvider'添加到providers键

  4. Giphy外观添加到aliases键:'Giphy' => 'HiddeCo\Giphy\Facades\Giphy'

配置

Laravel Giphy所需的唯一配置是在您的.env文件中的GIPHY_API_KEY。公共测试密钥可在Giphy API文档中找到。

注意:在Laravel中,还可以通过运行php artisan config:publish并添加您的apiKeyconfig/giphy.php来配置Laravel Giphy。

注入Giphy

Giphy注入到控制器中非常简单。

<?php

class GifController extends BaseController {

	public function __construct(HiddeCo\Giphy\Giphy $giphy)
    {

		$this->giphy = $giphy;

	}

  	public function get($id)
   	{
		try
		{

			return $this->giphy->gif()->random([ 'fmt' => 'html' ]);
		}
		catch (\Exception $e)
		{

			return $e->getMessage();
		}
    }
}

API

通过使用Giphy外观,使用此包与Giphy API通信相当简单。

Giphy: GIFs

您想根据关键词查找一个甜美的GIF,将关键词翻译成一个GIF,还是只获取一个随机的GIF?所有这些都可能。

Giphy::gif->search($query, $params = [])

搜索所有GIF,提供单词或短语,并接受4个可选参数作为数组。

  • limit: 默认25(最大:100)
  • 偏移量
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::gif()->search('code', ['limit' => 10, 'offset' => 10, 'rating' => 'g', 'fmt' => 'html']);

Gipgy::gif()->get($id)

通过id返回关于GIF的JSON元数据。

Giphy::gif()->get('4hnQDVKVARZ6w');

Giphy::gif()->getMultiple($ids = [])

通过id返回多个GIF的JSON元数据。

Giphy::gif()->getMultiple(['4hnQDVKVARZ6w', 'Ro2MgOxH9iaVG']);

Giphy::gif()->translate($query, $params = [])

从Giphy '翻译引擎'返回一个GIF,输入一个关键词并获取GIF翻译。接受2个可选参数。

  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::gif()->translate($query, ['rating' => 'g', 'fmt' => 'html']);

Giphy::gif()->random($params = [])

返回一个随机GIF,可以通过以下可选参数进行限制。

  • tag: 根据关键词获取一个随机GIF
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::gif()->random(['tag' => 'cats', 'rating' => 'g', 'fmt' => 'html']);

Giphy::gif()->trending($params = [])

返回互联网上当前趋势的GIF。接受3个可选参数。

  • limit: 默认25(最大:100)
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::gif()->trending(['limit' => 100, 'rating' => 'pg', 'fmt' => 'html');

Giphy: Stickers

Giphy贴纸是动画贴纸(具有透明背景的动画GIF)。

Giphy::sticker()->search($query, $params = [])

搜索所有贴纸GIF,提供单词或短语,并接受4个可选参数作为数组。

  • limit: 默认25(最大:100)
  • 偏移量
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::sticker()->search('code', ['limit' => 10, 'offset' => 10, 'rating' => 'g', 'fmt' => 'html']);

Giphy::sticker()->translate($query, $params = [])

从Giphy '翻译引擎'返回一个贴纸GIF,输入一个关键词并获取贴纸GIF翻译。接受2个可选参数。

  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::sticker()->translate($query, ['rating' => 'g', 'fmt' => 'html']);

Giphy::sticker()->random($params = [])

返回一个随机贴纸GIF,可以通过以下可选参数进行限制。

  • tag: 根据关键词获取一个随机GIF
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::sticker()->random(['tag' => 'cats', 'rating' => 'g', 'fmt' => 'html]);

Giphy::sticker()->trending($params = [])

返回互联网上当前趋势的贴纸GIF。接受3个可选参数。

  • limit: 默认25(最大:100)
  • rating: 限制结果评分(y,g, pg, pg-13 或 r)
  • fmt: 返回格式,json或html(默认:json)
Giphy::sticker()->trending(['limit' => 100, 'rating' => 'pg', 'fmt' => 'html']);

许可

Laravel Giphy 在 MIT 许可证(MIT) 下授权。