Exécution en ligne de commande
Transférer le nom du fichier .env à utiliser
Dans CodeIgniter, avec le module PPCI, le fichier .env est chargé automatiquement en prenant en compte le contenu de la variable $_SERVER["envPath"]
, avec ce code :
if (is_file($file = $_SERVER["envPath"] . DIRECTORY_SEPARATOR . ".env") && is_readable($file)) {
new CodeIgniter\Config\DotEnv($_SERVER["envPath"],".env"))->load(); (
Dans un script, pour transférer la valeur de envPath
dans la variable $_SERVER
et permettre le chargement du fichier .env, il faut ajouter la ligne :
export envPath="/var/www/instances/instancename"
Voici un exemple d’utilisation, pour afficher simplement le contenu de la variable $_SERVER["envPath"]
:
Fichier PHP test.php
:
<?php
echo $_SERVER["envPath"].PHP_EOL;
Script test.sh
utilisé pour son déclenchement :
#!/bin/bash
export envPath=/var/www/instances/instancename
cd $envPath/public
php index.php maroute
où maroute correspond à la route à appeler.
Déclarez la route dans app/Config/Routes.php
(sans oublier le contrôleur correspondant), puis lancez l’exécution du script :
./test.sh
/var/www/instances/instancename