Foros del Web » Programando para Internet » PHP »

Definir rutas en constantes

Estas en el tema de Definir rutas en constantes en el foro de PHP en Foros del Web. Hola, Buenas de nuevo, Estoy definiendo las rutas a los ficheros de la web en un fichero, y después en lugar de usar los nombres ...
  #1 (permalink)  
Antiguo 11/03/2011, 03:10
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 8 meses
Puntos: 165
Definir rutas en constantes

Hola,

Buenas de nuevo,

Estoy definiendo las rutas a los ficheros de la web en un fichero, y después en lugar de usar los nombres reales, uso las constantes.

Pero... que pasa si muevo las rutas y creo un directorio?? tendría que tener las rutas con ../, ya al tener un include de footer.php por ejemplo, no las puedo modificar.. cual es la mejor manera de hacer esto?

Un saludo!
  #2 (permalink)  
Antiguo 11/03/2011, 03:20
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Definir rutas en constantes

Si creas una carpeta puedes agregar un / al principio de las rutas o poner la ruta absoluta.

Incluso hay personas que usan una carpeta debajo de las carpetas publicas.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 11/03/2011, 03:38
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 8 meses
Puntos: 165
Respuesta: Definir rutas en constantes

Cita:
Iniciado por Marvin Ver Mensaje
Si creas una carpeta puedes agregar un / al principio de las rutas o poner la ruta absoluta.

Incluso hay personas que usan una carpeta debajo de las carpetas publicas.

Suerte!
La solución que tengo ahora es colocar rutas absolutas.. pero no me acaba de gustar... y lo de añadir un ../ no es posible ya que no tengo acceso las rutas si hago un include de footer que ya incluye las rutas..

Un saludo!
  #4 (permalink)  
Antiguo 11/03/2011, 15:21
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años
Puntos: 101
Respuesta: Definir rutas en constantes

Es bueno definir rutas absolutas. Sobre todo con http://... Y a la vez, tener la opcion relativa.

Ej:
Código PHP:
Ver original
  1. $host  = $_SERVER['HTTP_HOST'];
  2. $uri  = rtrim(dirname(dirname($_SERVER['PHP_SELF'])), '/\\');
  3. $base = "http://" . $host . $uri . "/";
  4.  
  5. define('COMMONS', RAIZ."commons/");
  6. define('HTTP_COMMONS', $base."commons/");

Si por alguna razon especial necesitaras cambiar una ruta, podes hacer un condicional:

Código PHP:
Ver original
  1. if (basename($_SERVER['PHP_SELF']) == "index.php")
  2.     define('RAIZ', "../");
  3.    
  4. else
  5.     define('RAIZ', "../../");
  #5 (permalink)  
Antiguo 11/03/2011, 18:09
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 8 meses
Puntos: 165
Respuesta: Definir rutas en constantes

Cita:
Iniciado por mayid Ver Mensaje
Es bueno definir rutas absolutas. Sobre todo con http://... Y a la vez, tener la opcion relativa.

Ej:
Código PHP:
Ver original
  1. $host  = $_SERVER['HTTP_HOST'];
  2. $uri  = rtrim(dirname(dirname($_SERVER['PHP_SELF'])), '/\\');
  3. $base = "http://" . $host . $uri . "/";
  4.  
  5. define('COMMONS', RAIZ."commons/");
  6. define('HTTP_COMMONS', $base."commons/");

Si por alguna razon especial necesitaras cambiar una ruta, podes hacer un condicional:

Código PHP:
Ver original
  1. if (basename($_SERVER['PHP_SELF']) == "index.php")
  2.     define('RAIZ', "../");
  3.    
  4. else
  5.     define('RAIZ', "../../");
Hola buenas de nuevo,

Muchas gracias por la ayuda, de momento he optado por las rutas absolutas, asi que no me haría falta condicional, pero no me acaba de gustar del todo..

Un saludo!

Etiquetas: definir, rutas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:45.