Tout d’abord, jetons un coup d’œil à la structure des répertoires de notre exemple et au contenu de ces trois fichiers.
a.php
<?php include './c/d.php'
b.php
<?php define('__B', 'this is a test');
c/d .php
<?php include '../b.php'; var_dump(__B);
Le fichier d.php sous le répertoire c fait référence au fichier b.php sous son répertoire parent Lors de l'exécution de c/d.php seul, aucune erreur ne se produira. Problème, cependant, si a.php dans le même répertoire que b fait référence à c/d.php, il y aura un problème, et il signalera une erreur indiquant que le fichier n'existe pas.
Réflexion :
Cela signifie probablement qu'après que a.php ait introduit c/d.php dans a.php, incluez '../b. path php' est relatif à a.php, et le chemin relatif vers a.php n'existe pas, donc ce problème se produit. Il est assez facile de causer des problèmes lors de l'utilisation de chemins relatifs lorsqu'un fichier peut être référencé à plusieurs endroits, et nous pouvons alors facilement résoudre ce problème en utilisant des chemins absolus.
Utilisez des chemins absolus pour résoudre le problème
a.php
<?php include __DIR__.'/../b.php'; var_dump(__B);
b. php
<?php define('__B', 'this is a test');
c/d.php
<?php define('__B', 'this is a test');
De cette façon, le chemin absolu du fichier est référencé, __DIR__
est une constante magique prédéfinie disponible depuis php5.3, indiquant le répertoire où se trouve ce fichier. Nous pouvons ensuite l'utiliser pour écrire le chemin absolu, ce qui peut être fait lors de l'exécution de a.php et c/d. .php Il est exécuté normalement Si avant php5.3, dirname(__FILE__)
était utilisé à la place de __DIR___
.
Résumé : En php, le chemin absolu fait référence à l'emplacement absolu sous le répertoire, qui atteint directement l'emplacement cible, généralement le chemin commençant à partir de la lettre de lecteur est basé sur le chemin relatif ; sur une référence. Recherchez le fichier dont vous avez besoin, c'est-à-dire que le chemin relatif est relatif au répertoire cible.
Le contenu ci-dessus est à titre de référence uniquement !
Tutoriel recommandé : Tutoriel vidéo 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!