This is a package that helps you quickly access various short link services, which you can use to make your app support short links provided by different short link services. From full disclosure, to requiring registration, and even paid services.
You can install the package via composer:
composer require sunxyw/unify-shorten
You can publish the config file with (it should be published automatically):
php artisan vendor:publish --tag="unify-shorten-config"
// using Facade
use Sunxyw\Shorten\Facades\Shorten;
Shorten::shorten('AWESOME URL HERE'); // using default provider
Shorten::provider('cuttly')->shorten('AWESOME URL HERE WITH CUTTLY'); // using cuttly provider
// using helper function
shorten('AWESOME URL HERE'); // using default provider
// using Shorten class
use Sunxyw\Shorten\Shorten;
app(Shorten::class)->shorten('AWESOME URL HERE'); // using default provider
app(Shorten::class)->provider('cuttly')->shorten('AWESOME URL HERE WITH CUTTLY'); // using cuttly provider
app(Shorten::class)->gotiny->shorten('AWESOME URL HERE WITH GOTINY'); // using gotiny provider (using magic property)
All the methods above will return the shortened URL.
API | Auth | HTTPS | CORS |
---|---|---|---|
1pt | No | Yes | Yes |
CleanURI | No | Yes | Yes |
Cutt.ly | apiKey |
Yes | Unknown |
GoTiny | No | Yes | Yes |
Firebase | apiKey |
Yes | Yes |
If you have more providers that you would like supported, please contact me in Issues. For paid providers, it would be even better if you could provide test credentials.
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.