(PECL xattr >= 0.9.0)

xattr_set Set an extended attribute


bool xattr_set ( string $filename , string $name , string $value [, int $flags = 0 ] )

This function sets the value of an extended attribute of a file.

Gli attributi estesi hanno due namespace differenti: user e root. Il namespace user è disponibile per tutti gli utenti mentre il namespace root è disponibile solo per gli utenti con privilegi di root. xattr opera sul namespace user di default, ma questo si può cambiare utilizzando il parametro flags.

Elenco dei parametri


The file in which we set the attribute.


The name of the extended attribute. This attribute will be created if it doesn't exist or replaced otherwise. You can change this behaviour by using the flags parameter.


The value of the attribute.


Supported xattr flags
XATTR_CREATE Function will fail if extended attribute already exists.
XATTR_REPLACE Function will fail if extended attribute doesn't exist.
XATTR_DONTFOLLOW Do not follow the symbolic link but operate on symbolic link itself.
XATTR_ROOT Set attribute in root (trusted) namespace. Requires root privileges.

Valori restituiti

Restituisce TRUE in caso di successo, FALSE in caso di fallimento.


Example #1 Sets extended attributes on .wav file

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')); 

Vedere anche:

add a note add a note

User Contributed Notes 1 note

blr at blr dot hu
2 years ago
Be aware when use on filesystem without xattr support, it returns true. (Bug reported)
To Top