2009-02-23 21 views
1

J'ai un fichier PHP à mon serveur racine .. index.php .. qui include « s .. DIR/main.phpY compris un fichier PHP, traite les URL relatives de ce répertoire

maintenant .. DIR/main.php .. beaucoup de » includeà proximité fichiers PHP en utilisant relatives URL à l'aide .. include("./common1.php");

de toute façon je peux changer le chemin de base URL relative donc en incluant « DIR/main. php "Il peut relativement accéder à ses fichiers PHP à proximité comme" DIR/commo n1.php ", au lieu d'essayer de trouver" common1.php "à la racine du site.

Répondre

0

Tout d'abord, définissez le "chemin de base-URL relative " à votre répertoire

set_include_path(get_include_path() . '/DIR'); 

Deuxièmement, inclure votre dossier!

require('main.php'); 

Cela devrait fonctionner même si je ne l'ai pas testé.

2

Jetez un oeil à set_include_path

Edit: Lorsque vous ajoutez des chemins de include_path assurez-vous d'utiliser la constante PATH_SEPARATOR car il est destiné à faire le chemin d'inclusion OS agnostique.

<?php 

set_include_path(implode(PATH_SEPARATOR, array(
    get_include_path(), 
    '/DIR1', 
    '/DIR2/DIR3', 
    dirname(__FILE__), 
))); 

?> 
0

En plus de la réponse de lonut, vous pouvez obtenir le répertoire du fichier en utilisant une combinaison de la constante __FILE__ et dirname().

$include_path = dirname(__FILE__); 
set_include_path($include_path);