Maison >développement back-end >tutoriel php >Comment PHP résout-il les chemins d'inclusion relatifs dans les applications multi-fichiers ?

Comment PHP résout-il les chemins d'inclusion relatifs dans les applications multi-fichiers ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-03 11:13:09245parcourir

How Does PHP Resolve Relative Include Paths in Multi-File Applications?

Comment PHP détermine les chemins d'inclusion relatifs

Les chemins d'inclusion PHP sont un aspect crucial de la gestion des dépendances de code dans les applications PHP. Cependant, comprendre comment PHP détermine les chemins relatifs pour inclure les fichiers peut prêter à confusion.

Détermination du chemin racine des inclusions

La fonction d'inclusion de PHP insère le code d'un fichier spécifié dans le script en cours d'exécution. Le chemin spécifié dans l'instruction include peut être absolu (par exemple, "/path/to/file.php") ou relatif au répertoire actuel (par exemple, "file.php").

La question clé se pose lorsque vous avez plusieurs fichiers avec des inclusions :

Le chemin d'accès à un fichier inclus dépend-il de l'emplacement du code appelant ou du code principal script ?

Réponse :

Le chemin d'accès à un fichier inclus est relatif au script principal, quel que soit le fichier qui appelle la fonction d'inclusion.

Cela signifie que dans l'exemple donné, le chemin d'accès au fichier C.PHP serait relatif à l'emplacement du fichier A.PHP. Le script principal (A.PHP) définit le répertoire de travail actuel et détermine ainsi la racine de tous les chemins d'inclusion suivants.

Implications :

  • Tous les chemins d'inclusion sont spécifiés par rapport à l'emplacement du script principal.
  • La fonction include insère uniquement du code dans le script en cours d'exécution. script.
  • L'emplacement du code appelant n'est pas pertinent pour déterminer le chemin d'accès au fichier inclus.

Remplacement du comportement par défaut :

Si vous souhaitez rendre le chemin d'inclusion relatif au code appelant (B.PHP dans l'exemple), vous pouvez utiliser le FILE ou Constantes DIR. Ces constantes pointent toujours vers l'emplacement du fichier qui contient l'instruction include.

Exemple :

include(dirname(__FILE__)."/C.PHP");

Dans ce cas, le chemin d'accès au fichier C.PHP serait relatif au répertoire du fichier B.PHP.

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!

Déclaration:
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