variable globale dans laravel
En PHP, j'ai utilisé pour définir certaines variables dans mon header.php
et de les utiliser dans toutes mes pages. Comment puis-je avoir quelque chose comme ça dans Laravel?
Je ne parle pas View::share('xx', 'xx' );
Que je veux avoir une variable qui détient un certain nombre dans l'informatique et j'ai besoin de ce numéro à l'intérieur de tous mes contrôleurs pour calculer quelque chose.
- Je ne sais pas th laravel, mais pour atteindre cet objectif, vous pouvez toujours créer un singleton classe de registre. en.wikipedia.org/wiki/Singleton_pattern
Vous devez vous connecter pour publier un commentaire.
Sonne comme un bon candidat pour un fichier de configuration.
En créer un nouveau, nous allons l'appeler
calculations.php
:Laravel ~4ish:
Laravel ~5ish:
Puis mettre des trucs dans le nouveau fichier de configuration:
Ensuite récupérer la config dans votre code quelque part (notez le nom de fichier devient un "espace de noms" de toutes sortes pour la configuration):
config/calculations.php
.Définir une propriété sur la
BaseController
, qui devrait être situé dans votrecontrollers
répertoire.Vos contrôleurs devraient étendre la
BaseController
de la classe et ainsi hériter de ses propriétés.Vous pouvez utiliser Vue Compositeurs
Et au lieu d'utiliser la méthode de démarrage décrite dans les docs, vous pouvez utiliser:
Qui rendrait ce que les variables de vous déclarer auprès de
à toutes les vues de votre application.
Voici un exemple complet de la façon dont je l'utilise dans un de mes projets.
app/Providers/ComposerServiceProvider.php
app/Http/ViewComposers/UserComposer.php
Juste rappelez-vous que parce que vous avez déclaré un nouveau fournisseur de services, il doit être inclus dans le 'fournisseurs', array dans config/app.php