(PHP 4, PHP 5, PHP 7, PHP 8)
chmod — Cambia el modo del fichero
Reemplaza el modo del fichero filename
por el modo permissions
.
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);
?>
En caso de error, se emite un error E_WARNING
.
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.