Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Short Url Bundle Laravel Package

biozshock/short-url-bundle

View on GitHub
Deep Wiki
Context7

ShortUrlBundle

This bundle provides a service and twig extension for getting short urls like http://your.host/~short

Build Status

Installation

Add this bundle to your project

Using the vendors script

Add the following lines in your deps file:

[BumzShortUrlBundle]
    git=git://github.com/biozshock/ShortUrlBundle.git
    target=bundles/Bumz/ShortUrlBundle

Run the vendors script:

$ php bin/vendors install

Using Git submodule

$ git submodule add git://github.com/biozshock/ShortUrlBundle.git vendor/bundles/Bumz/ShortUrlBundle

Add the Bumz namespace to your autoloader

<?php
// app/autoload.php

$loader->registerNamespaces(array(
    'Bumz' => __DIR__.'/../vendor/bundles',
    // your other namespaces
));

Add this bundle to your application's kernel

<?php
// app/AppKernel.php

public function registerBundles()
{
    return array(
        // ...
        new Bumz\ShortUrlBundle\BumzShortUrlBundle(),
        // ...
    );
}

Add bundle's routing

# /app/config/routing.yml
BumzShortUrlBundle:
    resource: "@BumzShortUrlBundle/Resources/config/routing.yml"
    prefix:   /

Examples

Short url in a controller

<?php

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class UsersController extends Controller
{
    public function getUserProfileShortAction()
    {

        ...

        $longUrl = $this->get('bumz_short_url.shortener')->shorten('http://example.com');
        // $longUrl = '/~ShE'

        ...
    }
}

Get long url in controller

<?php

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class UsersController extends Controller
{
    public function getUserProfileShortAction()
    {

        ...

        $shortUrl = 'aUty';
        $longUrl = $this->get('bumz_short_url.shortener')->getLong($shortUrl);
        // $longUrl = 'http://example.com'

        ...
    }
}

Get short url in a twig template

{{ 'http://example.com' | shortenUrl }}
{# this will output something like /~ShE #}
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor
spatie/laravel-javascript-views