Maison > développement back-end > tutoriel php > Comment fonctionnent les chemins d'inclusion relatifs dans les inclusions PHP imbriquées ?

Comment fonctionnent les chemins d'inclusion relatifs dans les inclusions PHP imbriquées ?

Barbara Streisand
Libérer: 2024-11-30 22:38:12
original
587 Les gens l'ont consulté

How Do Relative Include Paths Work in Nested PHP Includes?

Comprendre les chemins d'inclusion relatifs PHP

En PHP, les chemins d'inclusion relatifs peuvent prêter à confusion lorsqu'il s'agit de plusieurs inclusions imbriquées. Pour déterminer le chemin correct vers un fichier inclus, il est essentiel de comprendre les règles de portée qui les régissent.

Lorsque vous exécutez un script PHP, le répertoire de travail actuel devient le répertoire où se trouve le script. Cela sert de chemin de base pour résoudre les chemins relatifs spécifiés dans les instructions d'inclusion. Cependant, il y a une distinction à faire lorsque l'on considère les inclusions imbriquées.

Par rapport au script principal

Lorsque le fichier A.PHP inclut le fichier B.PHP, qui à son tour inclut fichier C.PHP, le chemin relatif vers C.PHP est déterminé en fonction de l'emplacement de A.PHP, et non de B.PHP. En effet, include() insère simplement le contenu du fichier spécifié dans le script en cours d'exécution.

Exemple :

// A.php is located at /var/www/html/
<?php include 'B.php'; ?>

// B.php is located at /var/www/html/includes/
<?php include 'C.php'; ?>

// C.php is located at /var/www/html/utils/
Copier après la connexion

Dans ce scénario, le chemin relatif vers C.PHP est /var/www/html/utils/C.php, pas /var/www/html/includes/utils/C.php.

Utilisation de FILE pour les chemins relatifs

Si vous souhaitez spécifier un chemin relatif en fonction de l'emplacement du fichier effectuant l'inclusion, vous pouvez utiliser la constante __FILE__. Cette constante pointe toujours vers le fichier réel où réside la ligne de code actuelle, quel que soit le répertoire de travail actuel.

// Using __FILE__ in B.php
<?php include(dirname(__FILE__)."/C.PHP"); ?>
Copier après la connexion

Dans ce cas, le chemin relatif vers C.PHP proviendrait du répertoire contenant B .PHP.

N'oubliez pas que les chemins d'inclusion de PHP sont toujours relatifs au script principal. En tirant parti de __FILE__ ou en comprenant la nature hiérarchique des chemins d'inclusion, vous pouvez gérer en toute confiance les instructions d'inclusion relatives dans les applications PHP complexes.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal