Blog de Gonzalo

OBTENER PERMISOS DE UN FICHERO EN PHP

Para obtener los permisos de un fichero en php hay que usar la función fileperms la cual nos devolverá todos los permisos del fichero, o directorio, pasados por parámetro. Funciona de la siguiente manera: int fileperms ( string $filename ); donde $filename es la ruta del fichero o directorio. El resultado será decimal. Para obtener el resultado en octal, como en linux, hay que llamar a dicha funcón de la siguiente manera, aunque hay otras maneras:substr(sprintf('%o', fileperms($filename)), -4).
Los resultados de la funcióm fileperms se guardan en caché así que antes de llamar a esta función hay que usar la función clearstatcache.
En php podemos saber si tiene el permiso de lectura, escritura y ejecución por separado:

  • is_executable: indica si el archivo es ejecutable.
  • is_readable: indica si el archivo se puede leer.
  • is_executable: indica si el archivo se puede ejecutar.
En las funciones especificadas anteriormente también se aconseja la función clearstatcache.
La función fileowner devuelve el propietario del fichero y la función fileowner devuelve el grupodel fichero. Estas dos funciones devuelven un valor numérico para que devuelva la cadena de texto se debe usar la función posix_getpwuid.
Espero que este post os haya servido.