Skip to content
Silex Service Provider for Tiny
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Silex Tiny Service Provider

A simple Silex Service Provider for Tiny by Zack Kitzmiller.


Install via composer

$ composer require jackdaw/silex-tiny:dev-master

This will install the package and all the dependencies.

Before using Tiny, you need to create a random set. You can easily do this using the command line tools included in Tiny.

$ ./vendor/zackkitzmiller/tiny/bin/genset 

Generating TinyPHP Random Set...
Set Generated
Set: SJYaqGhd6mAe3NbWOB2KwfRtHslMFQkyXCu1gUI4cET97jZPp8nD5iVv0Loxzr 

Now you have random set of characters for Tiny. Time to register the service provider for Silex.

use Jackdaw\SilexTiny\TinyServiceProvider;
// Create the Silex Application $app

$app->register(new TinyServiceProvider(), array(
    'tiny.options' => array('set' => 'SJYaqGhd6mAe3NbWOB2KwfRtHslMFQkyXCu1gUI4cET97jZPp8nD5iVv0Loxzr')

Passing the random set to the service provider is mandatory.


You can use the service like this

echo $app['tiny']->to(5);
// E

echo $app['tiny']->from('E');
// 5

echo $app['tiny']->to(126);
// XX

echo $app['tiny']->from('XX');
// 126

echo $app['tiny']->to(999);
// vk

echo $app['tiny']->from('vk');
// 999

Tiny Trait

This package comes with an optional trait for using Tiny.

// In Application
use \Jackdaw\SilexTiny\TinyTrait;

Now you can simply use Tiny like this

echo $app->to(5);
// E

echo $app->from('E');
// 5

Twig Filter

A custom Twig filter is also included in the package. It's just a one way transformation, at least at the moment. This is useful for transforming ids in the view layer of your application.

// In twig template
{{ 5 | tiny }} // E
You can’t perform that action at this time.