(PHP 4, PHP 5)
realpath — Devuelve el nombre de la ruta absoluta canonizado
$path
)
realpath() expande todos los enlaces simbólicos y
resuelve las referencias de caracteres '/./', '/../' y '/' extra, en
la ruta de entrada dada por path
y devuevle el
nombre de la ruta absoluta canonizado.
path
La ruta que va a ser comprobada.
Nota:
Aunque se debe proporcionar una ruta, el valor puede estar en blanco o ser
NULL
. En estos casos, el valor es interpretado como el directorio actual.
Devuelve el nombre de la ruta absoluta canonizado si se tiene éxito. La ruta resultante no tendrá componentes de enlaces simbólicos, '/./' o '/../'.
realpath() devuelve FALSE
en caso de error, p.ej. si
el fichero no existe.
Nota:
El script en ejecución debe tener permisios de ejecución en todos los directorios de la jerarquía, de lo contrario realpath() devolverá
FALSE
.
Nota: Debido a que el tipo integer de PHP es con signo y muchas plataformas usan enteros de 32 bits, algunas funciones de sistema de ficheros pueden devolver resultados inesperados para ficheros que son mayores de 2 GB.
Versión | Descripción |
---|---|
5.3.0 |
Antes de esta versión, si en sistemas *BSD el último compnente de path
no existía, realpath() no fallaba. Ahora
realpath() también falla en este caso.
|
5.0.0 |
Antes de esta versión, el parámetro path en blanco o NULL
ocasionaba que realpath() devolviera el nombre del directorio del script.
|
Ejemplo #1 Ejemplo de realpath()
<?php
chdir('/var/www/');
echo realpath('./../../etc/passwd');
?>
El resultado del ejemplo sería:
/etc/passwd
Ejemplo #2 realpath() en Windows
En windows realpath() cambiará las rutas del estilo unix al estilo windows.
<?php
echo realpath('/windows/system32');
?>
El resultado del ejemplo sería:
C:\WINDOWS\System32