Maison > développement back-end > tutoriel php > Comment PHP résout-il les chemins d'inclusion relatifs dans les inclusions de fichiers imbriqués ?

Comment PHP résout-il les chemins d'inclusion relatifs dans les inclusions de fichiers imbriqués ?

DDD
Libérer: 2024-11-29 12:29:13
original
363 Les gens l'ont consulté

How Does PHP Resolve Relative Include Paths in Nested File Inclusions?

Comprendre les chemins d'inclusion relatifs en PHP

Lorsque vous travaillez avec PHP, les chemins d'inclusion jouent un rôle crucial dans l'incorporation de fichiers externes dans votre code. Mais déterminer l'emplacement relatif des fichiers inclus peut être déroutant.

Considérez ce scénario : vous disposez d'un script PHP A.php qui inclut B.php, qui à son tour inclut C.php. La question se pose : le chemin relatif vers C.php doit-il être basé sur l'emplacement de B.php ou de A.php ?

Réponse :

Contrairement à certains langages de programmation , les chemins d'inclusion de PHP sont toujours relatifs au script principal, dans ce cas, A.php. En effet, la fonction include() intègre essentiellement le code du fichier inclus dans votre script actuel.

Raison :

Le mécanisme derrière include() consiste à fusionner le contenu d'un autre fichier dans le script actuel. Par conséquent, il fonctionne uniquement dans le contexte du script principal, quels que soient les autres fichiers qu'il peut inclure en cours de route.

Impact :

Cela signifie que le fichier le include() est appelé depuis n’a aucune incidence sur la résolution du chemin. Le répertoire de travail actuel n'est pas non plus pertinent ; le chemin est déterminé uniquement par l'emplacement du script principal.

Exception :

Si vous souhaitez spécifiquement rendre le chemin relatif au fichier inclus, vous pouvez utiliser le __FILE__ constante. Cette constante pointe toujours vers l'emplacement littéral du fichier actuel, vous permettant de calculer dynamiquement le chemin d'accès au fichier inclus.

Exemple :

Pour inclure C.php par rapport à B.php, vous pouvez utiliser :

include(dirname(__FILE__)."/C.PHP");
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal