Be aware when use on filesystem without xattr support, it returns true. (Bug reported)(PECL xattr >= 0.9.0)
xattr_set — Establece un atributo extendido
Esta función establece el valor de un atributo extendido del archivo.
Los atributos extendidos tienen dos espacios de nombres diferentes:
user y root. El espacio de nombres user está disponible para todos los usuarios, mientras que el espacio
de nombres root solo está disponible para usuarios con privilegios de root. xattr opera sobre el espacio
de nombres user por defecto, pero esto se puede cambiar con el parámetro
flags.
filenameEl archivo en el que se establece el atributo.
name
El nombre del atributo extendido. Este atributo se crea si no existe
o reemplazado si ya existe. Puede cambiar este comportamiento mediante
el uso de los parámetros flags.
valueEl valor del atributo.
flags
XATTR_CREATE |
La función falla si el atributo extendido ya existe. |
XATTR_REPLACE |
La función falla si el atributo extendido no existe. |
XATTR_DONTFOLLOW |
No sigue el enlace simbólico pero se puede operar en este. |
XATTR_ROOT |
Establece atributos en la raíz (segura) de espacio de nombres. Requiere privilegios de administrador. |
Ejemplo #1 Establece atributos extendidos en archivo .wav
<?php
$file = 'my_favourite_song.wav';
xattr_set($file, 'Artist', 'Someone');
xattr_set($file, 'My ranking', 'Good');
xattr_set($file, 'Listen count', '34');
/* ... other code ... */
printf("You've played this song %d times", xattr_get($file, 'Listen count'));
?>
Be aware when use on filesystem without xattr support, it returns true. (Bug reported)