ya se han escrito temas similares pero no estan totalmente completos...
Supongamos que la ruta del public_html es /home/tuweb/public_html/ y vamos a centrarnos en que tenemos un archivo 2 subdirectorios mas abajo, y necesitamos saber la ruta del public_html para incluir un archivo que esta en la raiz. Descartamos cosas como ../../ y DOCUMENT_ROOT, pues el primero no funciona en cuanto incluyes el archivo desde otro lado, y el segundo casi nunca esta definido.
Recopile 3 metodos para conseguir dicha ruta, el primero lo saque de un tema de este foro, otro del codigo fuente de SMF y otro directamente de php.net
Código
Código
Código
Luego ya pondriamos un IF para saber si la variable de la ruta esta definida, sino la definiriamos con alguno de estos metodos (alguna idea mejor?).
Mi pregunta seria... cual de estos 3 seria el mas limpio/rapido/optimo ? hay que tener en cuenta que se usaria al principio de todos los scripts, y por eso cada nanosegundo cuenta
Si alguno/a tiene idea de alguna otra forma...
Ya se que con una web modulada no haria falta nada de esto, pues ya los llamo desde un solo archivo y listo, pero para proyectos mas grandes no puedes llamarlo todo desde un fichero.
Saludos y gracias
EDITO:
Cito un comentario de php.net:
Citar
This is silly:
dirname(dirname( dirname( dirname(dirname( dirname( dirname(__FILE__))))))); // This is rediculous
function recursiveDirName($file, $x){
if($x > 0) return recursiveDirName( dirname($file), $x-1 );
return $file;
}
This is much easier:
$file = recursiveDirName(__FILE__, 7);
dirname(dirname( dirname( dirname(dirname( dirname( dirname(__FILE__))))))); // This is rediculous
function recursiveDirName($file, $x){
if($x > 0) return recursiveDirName( dirname($file), $x-1 );
return $file;
}
This is much easier:
$file = recursiveDirName(__FILE__, 7);
Que opinan sobre esto? se refiere solo a comodidad o tiene algun otro sentido?