Publié le 07/12/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Lister les fichiers inclus dans un script PHP

L'exécution d'un script PHP s'appuie sur des librairies ou des portions de code déjà développées. Pour cela, les ressources sont déclarées en haut du script avec les fonctions include() ou require(). Ce principe peut être automatisé en utilisant __autoload() qui se charge d'inclure la librairie nécessaire.

Inclure un fichier PHP

L'import d'une bibliothèque passe par les fonctions include() ou require() qui peuvent s'écrire de manières suivantes:
include 'class.db.php';
include_once './const.php';
require dirname(__FILE__).'/log.php';
require_once $_SERVER['DOCUMENT_ROOT'].'./formulaire.php';

Suivant l'architecture de son projet PHP, les scripts sont tous inclus sur l'index ou alors les fichiers sont insérés au fur et à mesure de leur utilisation. Par exemple dans un modele MVC dans lequel chaque partie (controller, view, model) utilise des scripts propres, on peut se retrouver avec des dizaine de class ajoutées.

Lister les ressources externes

Face à un bug, il est intéressant de connaitre tous les fichiers PHP liés dans le script pour déterminer l'origine de l'erreur. D'autre part, la fonction get_included_files() permet de faire le tri dans les fichiers inclus.
<?php
$all_included_files = get_included_files();
 
foreach ($all_included_files as $filename) {
    echo '<br>Fichier: '.basename($filename).'<br>Chemin: '.$filename;
}
?>

Exemple de résultat:

Fichier: class.db.php
Chemin: /sites/mondomain.com/lib/class.db.php

Fichier: const.php
Chemin: /sites/mondomain.com/admin/const.php

Fichier: log.php
Chemin: /sites/mondomain.com/log.php

Fichier: formulaire.php
Chemin: /sites/mondomain.com/HTML/formulaire.php


L'erreur la plus fréquente est de se retrouver avec 2 class ayant le même nom. Souvent le changement de version ou la modification de scripts amène à renommer un fichier sans pour autant renommer la class. Ainsi la fonction get_included_files() est pratique pour connaitre les fichiers inclus dans le script PHP pour détecter l'origine de l'erreur.


Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - class
Mise a jour
07/12/2010
Visualisation
vu 2689 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 265 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Patrice dans CMS

Concernant la commande ShellExecute :

Si vous voulez lancer un programme dont le nom est contenu dans une propriété text,
caption, items bref d\'un string ... n'oubliez pas de transfor...

Publié par nicolasterraes dans tuto

bonjour,
je ne comprends pas cette tape:

Les liens vers les feuilles de style et les fichier js sont declares dans les pages HTML. Modifiez les balises meta ainsi:
Feuille de style:
d...

Publié par rsuinux dans php5

Merci pour cet article.
Cela m'a debloque pour sqlite3 sur openwrt :)
Cordialement.

Publié par Adresse IP dans news

Je cherche un moyen pour afficher une correspondance entre adresse IPv4 et adresse IPv6 sans possibilite d'installer le protocole ipv6. Comment faire J'ai vu qu'il existait des possibilites de faire...

Publié par nico dans java

Petite erreur constate.
Apparemment il faut remplacer :
&mailTo = &?body=Envoyer un email avec Java
par &mailTo = < et commercial sans '<' et '>' &body=Envoyer un email avec Java