À propos des fichiers «.local» et des possibilités de remplacement
Remplacement général des fichiers
Il s'agit d'une fonctionnalité assez avancée et peu utilisée. Elle ne doit être utilisée que lorsque les fichiers système de base sont fortement modifiés. En général, il existe des moyens plus élégants de remplacer les objets.
À plusieurs endroits, il utilise des fichiers ".local" pour vous permettre de remplacer autant que possible les fichiers système par défaut (si nécessaire). Par exemple, le démarreur, "index.php" (dans le répertoire principal de phpdevshell) étant censé instancier et exécuter l'instance principale de PHPDevShell, donnerait le contrôle à "index.local.php" s'il est présent. Voici une liste de fichiers pouvant être remplacés par un fichier .local :
- index.php donnera le contrôle à "index.local.php" s'il est présent (uniquement enveloppé dans un try/catch très simple.
- Avec chaque fichier de configuration essayé, une version ".local" sera également essayée (en utilisant "require_once()").
Remplacement par le haut
Vous pouvez facilement utiliser une version personnalisée de n'importe quel ensemble de base en le fournissant dans la méthode appropriée. Par exemple, en utilisant "index.local.php" un Skel alternatif :
- require 'includes/PHPDS.inc.php';
- require 'advanced_policy.php'; /* l'objet de sécurité personnalisé est défini ici */
-
- class custom_PHPDS extends PHPDS {
- public function PHPDS_security () {
- if (empty($this->security)) {
- $this->security = new custom_security();
- $this->security->PHPDS_dependance($this);
- }
- return $this->security;
- }
- }
-
- $PHPDS = new custom_PHPDS;
- $PHPDS->run();
La classe custom_security est une fille de la classe PHPDS_security avec une petite modification, et PHPDS l'utilise désormais à la place de la classe de sécurité par défaut. Vous pouvez bien sûr utiliser cette méthode de classe pour fournir des paramètres à votre instance de sécurité si nécessaire.