Tutoriales de php

Problema de rutas 1

Supongamos que tenemos como ruta del "public_html" esta ruta completa: "/home/tuweb/public_html/" y lo que queremos es un archivo que está dos subdirectorios abajo... ó lo que es lo mismo en el raiz.

La respuesta podría ser $_SERVER['DOCUMENT_ROOT'] (El directorio raíz de documentos bajo el que está siendo ejecutado el script actual), pero el autor del hilo descarta esta opción para ello nos da tres alternativas:

Alternativa 1:

str_replace("subdir/subdir/miscript.php", "", __FILE__);

Alternativa 2:

dirname(dirname(__FILE__));

Alternativa 3:

realpath("../../");

__FILE__ nos devuelve el nombre del fichero utilizado en la ejecución del script.
str_replace :Sustitiye todas las apariciones de una cadena en otra
dirname : Devuelve el nombre del directorio de un ruta dada.
realpath : Devuelve el nombre de ruta absoluto simplificado.

¿Cúal de estas tres opciones os parecen mejor (limpia, rápida y óptima)?

Problema de rutas 2

Otro tema relacionado con las rutas de Php con el que me encontré hace poco tiempo es el siguiente:

Necesitaba obtener mediante una función la URL raiz a partir de una URL dada, voy a poner un ejemplo para facilitar un poco la comprensión del problema:

URL ofrecida: http://www.tufuncion.com/index.php
URL devuelta por función: http://www.tufuncion.com/

URL ofrecida: http://www.tufuncion.com/themes/tufuncion/logo.png
URL devuelta por función: http://www.tufuncion.com/

Esta es la función que finalmente utilicé:

 

function obtener_url_raiz($url) {
$parte1 explode("/"$url);
$count count($parte1);
$count_array $count 1;
if (
$count >= 4) {
if (
$parte1[$count_array] != '') {
 
$path str_replace($parte1[$count_array], ''$url); }
else { 
$path $url; }
} else {
if(
substr($url,-1) != '/'$url .= '/'$path $url; }
 return 
$path;
}

 

Autor: tufuncion.com

Comentarios en "Obtener la ruta de un fichero en php"

Table 'programa_programas.t_comentarios' doesn't exist