VOUS ÊTES ICI: Accueil » Blog » Raspberry » Guides Raspberry pi » La constante magique __DIR__ dans les scripts PHP et crontab
Guides Raspberry pi

La constante magique __DIR__ dans les scripts PHP et crontab

Si comme moi vous planifiez des tâches PHP sur votre Raspberry et que dans vos scripts vous utilisez souvent les mêmes variables, il peut être intéressant d’utiliser un include commun pour éviter de déclarer toujours les mêmes variables et fonctions.

Definition de la constante __DIR__:
Le dossier du fichier. Si utilisé dans une inclusion, le dossier du fichier inclus sera retourné. C’est l’équivalent de dirname(__FILE__). Ce nom de dossier ne contiendra pas de slash final, sauf si c’est le dossier racine.

 

Mais comment faire?

J’ai pas mal galéré pour trouver comment définir le chemin de mes includes. C’est pourquoi je voulais partager avec vous le fruit de mes recherches avec un mini-guide spéciale expliquant comment utiliser la constante magique DIR sur Raspberry .

1 Exemple de fichier Test.php exécutable placé dans le répertoire /var/www/scripts

<?php
// Chargement des données et fonctions
chdir(__DIR__);	require_once( __DIR__.'/include/variable.php' ); 

echo $rChariot."Voici un script qui fonctionne avec crontab: ";

?>

 

2 Déclaration du fichier variable dans le répertoire /var/www/scripts/include

<?php 
// Identifiants de l'API Eedomus
$IPeedomus = "api.eedomus.com"; 


// Variable globale
$Ip = '';
$rChariot  = '<BR>';

// Définition de timezone
date_default_timezone_set("Europe/Paris");

?>

Comme vous pouvez le voir, la variable  __DIR__ permet de récupérer le chemin du fichier que l’on execute.

 

3 Maintenant, il ne reste plus qu’a planifier l’exécution de notre fichier.

sudo crontab -e
# Execution une fois par jour
0 0 * * * php5 /var/www/script/Test.php

 

Conclusion

Simple non? 🙂 A vous de jouer les amis, bon dev !

Raspberry Pi 3 Model B, Quad Core CPU 1.2 GHz, 1 GB RAM
1 051 Commentaires
Raspberry Pi 3 Model B, Quad Core CPU 1.2 GHz, 1 GB RAM
  • Raspberry Pi 3 Model B, CPU Quad Core 1,2GHz Broadcom BCM2837 64bit , 1GB RAM, WiFi, Bluetooth...

Dernière mise à jour du tarif le  2020-04-10 at 10:01

Restez connecté aux nouveautés domotiques, inscrivez-vous à notre newsletter

Choix box domotique
promos domotique