Laravel: Où stocker mondial des tableaux de données et des constantes?

J'ai juste commencé à travailler avec Laravel. J'ai besoin de réécrire tout un système que j'ai fait il y a quelques années, à l'aide de Laravel 4 comme cadre de base. Dans mon ancien système que j'utilise pour avoir une constant.php fichier avec certaines constantes déclarées, et un globals.php fichier qui contenait beaucoup de tableau définit (Par exemple, les catégories de statuts, type d'événements, langs, etc.). Ce faisant, j'ai pu utiliser quelque chose comme

foreach ( $langs as $code => $domain ) {
    //Some stuff
}

n'importe où dans mon application.

Ma question est, comment puis-je stocker ces infos dans la soi-disant "laravel façon". J'ai essayé d'utiliser une sorte d'objet pour stocker cette information, cette mise en service et la création d'une façade:

app/libraries/Project/Constants.php

namespace PJ;

class Constants {

    public static $langs = [
            'es' => 'www.domain.es',
            'en' => 'www.domain.us',
            'uk' => 'www.domain.uk',
            'br' => 'www.domain.br',
            'it' => 'www.domain.it',
            'de' => 'www.domain.de',
            'fr' => 'www.domain.fr'
        ];

}

app/libraries/Project/ConstantsServiceProvider.php

namespace PJ;

use Illuminate\Support\ServiceProvider;

class ConstantsServiceProvider extends ServiceProvider {
    public function register() {
        $this->app->singleton('PJConstants', function() {
            return new Constants;
        });
    }
}

app/libraries/Project/ConstantsFacade.php

namespace PJ;

use Illuminate\Support\Facades\Facade;

class ConstantsFacade extends Facade {
    protected static function getFacadeAccessor() { 
        return 'PJConstants';
    }
}

compositeur.json

"psr-4": {
     "PJ\\": "app/libraries/Project"
},

et j'ai donc accès à la propriété comme PJ\Constantes::$langs.

Cela fonctionne, mais je doute qu'il est le plus efficace /bonne façon de le faire. Je veux dire, est-ce la bonne façon de "propager" une variable par la création d'un tout Fournisseur de Service, les façades et tous ces trucs? Ou où dois-je mettre ces données?

Merci pour tous les conseils.

EDIT # 01

Données que je veux passer à tous les contrôleurs et les vues peuvent être directement défini dans le script, comme dans l'exemple au début de mon post, mais il peut également être généré dinamically, à partir d'une base de données par exemple. Ces données pourraient être une liste de catégories. J'ai besoin d'eux dans tous les points de vue de générer une barre de navigation, mais j'ai aussi besoin d'eux pour définir des modèles de routage (comme /catégorie/sous-catégorie/produit), et également à analyser des informations dans plusieurs contrôleurs (Comme obtenir des informations à partir de la catégorie qui détient X produit).

Mon tableau est quelque chose comme:

$categories = [
    1 => ['name' => 'General', 'parent' => 0, 'description' => 'Lorem ipsum...'],
    2 => ['name' => 'Nature', 'parent' => 0, 'description' => 'Lorem ipsum...'],
    3 => ['name' => 'World', 'parent' => 0, 'description' => 'Lorem ipsum...'],
    4 => ['name' => 'Animals', 'parent' => 2, 'description' => 'Lorem ipsum...']
]

Comme un exemple. L'indice est l'id de la catégorie, et la Valeur est de l'info associé à la catégorie.

J'ai besoin de ce tableau, également, disponible dans toutes les Contrôleurs et les Vues.

Donc, si j'ai l'enregistrer en tant que variable de Config, est-il ok? Ou sinon, comment pourrais-je stocker ces données? Ce qui serait une mieux et sémantiquement correcte?

Grâce