Avez-vous déjà pensé à la façon dont vous pouvez déployer vos applications web et vous n’avez pas besoin ni de définir vos configurations de base de données avec les informations d’identification de votre serveur avant le déploiement, ni d’aller sur votre serveur pour modifier les informations d’identification pour suivre la même chose ?
Si vous êtes familier avec les frameworks PHP comme Laravel et Symphony, vous devez connaître leur fichier .env. C’est là que vous définissez toutes vos variables locales allant des informations d’identification de la base de données aux informations d’identification du service de messagerie et tout ce que vous pensez devoir être particulier à l’environnement (Local/Développement, Staging et Production).
Ces deux fonctions PHP sont le secret derrière le fichier .env de Laravel. Comme leur nom l’indique, l’une est utilisée pour définir les variables d’environnement putenv() tandis que l’autre est utilisée pour obtenir les variables getenv().
Vous pouvez en lire plus sur elles ci-dessous :
http://php.net/manual/en/function.getenv.php
http://php.net/manual/en/function.putenv.php
COMMENT LES IMPLIQUER DANS MON PROJET ?
L’implémentation est très simple, et comme vous l’avez deviné, oui ! Cela impliquera des boucles.
CREER UN FICHIER env.exemple.php
Je sais que vous allez vous demander, c’est quoi le .exemple ? C’est le fichier que vous allez copier et coller comme env.php. Rappelez-vous que c’est un fichier qui doit être propre à son environnement, ainsi, vous ajouterez votre env.php à .gitignore. Nous y reviendrons plus tard.
Avant cela, mettez le snippet ci-dessous dans votre fichier.
CREER UN FICHIER autoload.php
Selon la façon dont vous autoloadez les fichiers dans votre projet, composer/la bonne vieille include. Si vous utilisez composer, renommez ce fichier à quelque chose d’autre, il peut être nommé n’importe quoi en fait.
Cependant, pour le bien de cet écrit, nous nous en tiendrons à autoload.php.
Placer le snippet ci-dessous dans votre fichier.
Notez que dans notre autoload.php nous incluons env.php et non env.example.php?
C’est parce que, un env.php sera recréé à partir de env.example.php par l’environnement sur lequel votre application est déployée, et en raison de sa particularité, vous devriez l’ajouter à votre .gitignore.
Une fois que vous avez fini de configurer cela, comme je l’ai dit plus tôt, selon la façon dont vous autoload fichiers dans votre répertoire, autoload votre fichier autoload.php. Pour un projet non-compositeur, il suffit d’inclure ce fichier dans votre projet généralement via include "autoload.php";
Voilà ! vous pouvez accéder à vos variables d’environnement via env('VARIABLE_NAME')
.