parfumix/laravel-translator

Translator for Laravel
14
Install
composer require parfumix/laravel-translator
Latest Version:v1.0
PHP:>=5.4.0
License:MIT
Last Updated:Sep 23, 2015
Links: GitHub  ·  Packagist
Maintainer: parfumix

##Introduction

Laravel translator allow you to easy translate your website using different drivers like File, Database and others.

Instalation

You can use the composer package manager to install. From console run:

  $ php composer.phar require parfumix/laravel-translator "v1.0"

or add to your composer.json file

"parfumix/laravel-translator": "v1.0"

You have to publish package files using

  $ php artisan vendor:publish

Configuration

To register package you have to follow standart procedure registering serviceProvider class .Open your configuration file located in config/app.php and search for array of providers:

  'providers' => [
        // Add that line at the end of array ..
        'Translator\TranslatorServiceProvider'
      ]  

##Basic usage

Before using translator you have to publish your configuration file and select driver which you want to use

  $ php artisan vendor:publish
# here will be set up default driver .
default_driver: file

After all that you just have to use :

 __($key, $replacement, $locale = null) // will translate your key based on default selected driver. Locale will grab automaticly from localization component.

###Extending You can register own translator drivers which have will have custom business logic . But for the first register it in your configuration file

drivers:
  my_driver:
    class: Namespace\To\My\Driver
    option1: value1
    option2: value2
  database:
    class: Translator\Drivers\Database
    cache_time: 60
  file:
    class: Translator\Drivers\File

and create you class which implelement Translatable interface:

<?php

namespace My\Namespace;

use Translator\Driver;
use Translator\Translatable;

class MyDriver extends Driver implements Translatable {

    // Get translation by key .
    public function get($key, $replacement = array(), $locale = null);

    // Check if has translation by key .
    public function has($key, $locale = null);
    
    // Delete translation by key .
    public function delete($key, $group, $locale = null);
    
    // Save your translation to source .
    public function translate($key, $translation, $locale = null);

}

Related Packages

codezero/laravel-unique-translation

Check if a translated value in a JSON column is unique in the database.

1,062,032 188
codezero/laravel-localized-routes

A convenient way to set up, manage and use localized routes in a Laravel app.

670,656 544
clusteramaryllis/gettext

Adds localization support to laravel applications with PoEdit and Gettext

657 4
menarasolutions/fluent-laravel

Laravel package for Fluent translations (application localisation)

27 1
opgginc/codezero-laravel-localized-routes

A convenient way to set up, manage and use localized routes in a Laravel app.

129,879 29