fileperms fileperms (PHP 3, PHP 4, PHP 5)
fileperms -- Obtiene los permisos del archivo
Descripción int
fileperms ( string nombre_archivo )
Devuelve los permisos del archivo, o FALSE en caso de fallo.
Nota: Los resultados de esta
función son guardados. Consultar
clearstatcache() para más
detalles.
Sugerencia: A partir de PHP 5.0.0,
esta funcion tambien puede usarse con algunas URL
como nombre de fichero. Consultar Apéndice M , para
obtener una lista con soporte para la funcionalidad
stat() .
Ejemplo 1. Desplegar los permisos como un valor octal
<?php echo substr ( sprintf ( '%o' , fileperms ( '/tmp' )), - 4 ); echo substr ( sprintf ( '%o' , fileperms ( '/etc/passwd' )), - 4 ); ?>
Esto producirÃa la salida:
Ejemplo 2. Mostrar los permisos completos
<?php $perms = fileperms ( '/etc/passwd' ); if (( $perms & 0xC000 ) == 0xC000 ) { // Socket $info = 's' ; } elseif (( $perms & 0xA000 ) == 0xA000 ) { // Enlace Simbolico $info = 'l' ; } elseif (( $perms & 0x8000 ) == 0x8000 ) { // Regular $info = '-' ; } elseif (( $perms & 0x6000 ) == 0x6000 ) { // Bloque especial $info = 'b' ; } elseif (( $perms & 0x4000 ) == 0x4000 ) { // Directorio $info = 'd' ; } elseif (( $perms & 0x2000 ) == 0x2000 ) { // Caracter especial $info = 'c' ; } elseif (( $perms & 0x1000 ) == 0x1000 ) { // Pipe FIFO $info = 'p' ; } else { // Desconocido $info = 'u' ; } // Duenyo $info .= (( $perms & 0x0100 ) ? 'r' : '-' ); $info .= (( $perms & 0x0080 ) ? 'w' : '-' ); $info .= (( $perms & 0x0040 ) ? (( $perms & 0x0800 ) ? 's' : 'x' ) : (( $perms & 0x0800 ) ? 'S' : '-' )); // Group $info .= (( $perms & 0x0020 ) ? 'r' : '-' ); $info .= (( $perms & 0x0010 ) ? 'w' : '-' ); $info .= (( $perms & 0x0008 ) ? (( $perms & 0x0400 ) ? 's' : 'x' ) : (( $perms & 0x0400 ) ? 'S' : '-' )); // World $info .= (( $perms & 0x0004 ) ? 'r' : '-' ); $info .= (( $perms & 0x0002 ) ? 'w' : '-' ); $info .= (( $perms & 0x0001 ) ? (( $perms & 0x0200 ) ? 't' : 'x' ) : (( $perms & 0x0200 ) ? 'T' : '-' )); echo $info ; ?>
Esto producirÃa la salida:
Vea también is_readable() , y
stat()