chmod

(PHP 4, PHP 5, PHP 7, PHP 8)

chmodCambia el modo del fichero

Descripción

chmod(string $filename, int $permissions): bool

Reemplaza el modo del fichero filename por el modo permissions.

Parámetros

filename

Ruta hacia el fichero.

permissions

Se debe tener en cuenta que el modo permissions es considerado como un número en notación octal, por lo que, para asegurarse, se puede prefigurar el modo permissions con un cero. Las cadenas como "g+w" no funcionarán correctamente:

<?php
chmod
("/somedir/somefile", 755); // notación decimal: probablemente incorrecto
chmod("/somedir/somefile", "u+rwx,go+rx"); // string: incorrecto
chmod("/somedir/somefile", 0755); // notación octal: valor del modo correcto
?>

El argumento permissions se compone de tres valores octales que especifican los derechos para el propietario, el grupo del propietario y los demás, respectivamente. Cada componente puede ser calculado sumando los derechos deseados. El número 1 otorga los derechos de ejecución, el número 2 los derechos de escritura y el número 4 los derechos de lectura. Simplemente sume estos números para especificar los derechos deseados. También puede leer el manual de los sistemas Unix con man 1 chmod y man 2 chmod.

<?php
// Lectura y escritura para el propietario, nada para los demás
chmod("/somedir/somefile", 0600);

// Lectura y escritura para el propietario, lectura para los demás
chmod("/somedir/somefile", 0644);

// Todo para el propietario, lectura y ejecución para los demás
chmod("/somedir/somefile", 0755);

// Todo para el propietario, lectura y ejecución para el grupo, nada para los demás
chmod("/somedir/somefile", 0750);
?>

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Errores/Excepciones

En caso de error, se emite un error E_WARNING.

Notas

Nota:

El usuario actual es el usuario con el que PHP funciona. Probablemente sea diferente del usuario que se utiliza en modo Shell o FTP. El modo solo puede ser modificado por el usuario al que pertenece el fichero en la mayoría de los sistemas.

Nota: Esta función no funcionará en ficheros remotos ya que el fichero debe ser accesible vía el sistema de ficheros del servidor para poder ser examinado.

Ver también

  • chown() - Cambia el propietario del fichero
  • chgrp() - Cambia el grupo de un fichero
  • fileperms() - Lee los permisos de un fichero
  • stat() - Da información acerca de un fichero