vinelab/url-shortener

轻松实现URL缩短。

v1.2.0 2015-12-23 10:18 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:00:54 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads Build Status Scrutinizer Code Quality License

vinelab/url-shortener是一个与PHP框架无关的包,使您能够轻松缩短URL,支持您喜欢的URL缩短提供商,例如(Bit.ly、Goo.gl、Ow.ly)。

URL缩短提供商是在线服务,它将长URL压缩成更少的字符,以便更容易分享、推文或通过电子邮件发送链接。

该包需要PHP 5.4+,并附带Laravel 5 Facade和服务提供商以简化可选框架集成,并遵循FIG标准PSR-4以确保共享PHP代码之间的高度互操作性,并完全进行单元测试。

亮点

安装

推荐通过Composer安装此包。

通过Composer

A. 运行以下composer命令

	composer require vinelab/url-shortener:*

B. 手动将包添加到您的composer.json,然后运行composer update

    {
        "require": {
            "vinelab/url-shortener": "*"
        }
    }

集成

url-shortener是框架无关的,因此可以轻松集成到本地或您喜欢的框架中。

Laravel

url-shortener包可选支持Laravel 5,并附带服务提供商以简化集成。

正确安装包后,只需按照说明操作。

.1. 在您的config/app.php中注册服务提供者

    'providers' => array(
        ...
		'Vinelab\UrlShortener\UrlShortenerServiceProvider'
    ),

服务提供者将自动别名Vinelab\UrlShortener\Shorten类,因此您可以在应用程序的任何地方轻松使用Shorten外观。

.2. 发布配置文件

php artisan vendor:publish --provider ='Vinelab\UrlShortener\UrlShortenerServiceProvider'

配置

.1. 打开url-shortener.php并选择默认提供商

	'default' => 'bitly',

.2. 然后添加您的提供商令牌

        'bitly' => [
            'domain' => 'https://api-ssl.bitly.com',
            'endpoint' => '/v3/shorten',
            'token' => 'YOUR-TOKEN-HERE',
        ],

注意:强烈建议不要将令牌(任何敏感数据)添加到配置文件中,而是将其引用到.env变量中。

为此

  1. 'token' => 'YOUR-TOKEN-HERE',替换为'token' => env('BITLY_TOKEN'),

  2. 打开您的.env文件,并添加包含令牌值的令牌变量:BITLY_TOKEN=YOUR-TOKEN-HERE

  3. 将变量BITLY_TOKEN=添加到.env.example,供其他开发者使用。

使用

使用Laravel

最简单的方法是通过Shorten外观使用它。

$long_url = 'http://testing.tst/something/12345/something-else/54321';

$short_url = Shorten\Shorten::url($long_url); // returns the short version of the long_url as a string

测试

要从项目文件夹运行测试,请运行以下命令。

$ ./vendor/bin/phpunit

贡献

支持新提供商

要添加对新的URL缩短提供商的支持

  1. 为您的URL缩短服务编写驱动程序。检查Bitly驱动程序Vinelab\UrlShortener\Drivers\Bitly类。
  2. 将您的驱动程序配置添加到配置文件中。
  3. 为您的事件编写测试。
  4. 更新README文件
  5. 有关详细信息,请参阅贡献指南

支持

在Github上

安全

如果您发现任何与安全相关的问题,请通过电子邮件abed.halawi@vinelab.com而不是使用问题跟踪器。

鸣谢

许可

MIT许可证(MIT)。有关更多信息,请参阅许可文件