Be aware when use on filesystem without xattr support, it returns true. (Bug reported)
(PECL xattr >= 0.9.0)
xattr_set — Define um atributo estendido
Esta função define o valor de um atributo estendido de um arquivo.
Os atributos estendidos têm dois namespaces diferentes: usuário
e root. O namespace de usuário está disponível para todos os usuários, enquanto o namespace de root
está disponível apenas para o usuário com privilégios de root. xattr opera no namespace de
usuário por padrão, mas isso pode ser alterado com o parâmetro
flags
.
filename
O arquivo no qual o atributo será definido.
name
O nome do atributo estendido. Este atributo será criado se
não existir ou, caso contrário, será substituído. Este comportamento pode ser alterado
usando o parâmetro flags
.
value
O valor do atributo.
flags
XATTR_CREATE |
A função falhará se o atributo estendido já existir. |
XATTR_REPLACE |
A função falhará se o atributo estendido não existir. |
XATTR_DONTFOLLOW |
Não segue o link simbólico mas opera no link em si. |
XATTR_ROOT |
Define o atributo no espaço de nomes (confiável) do administrador. Requer privilégios de adminsitrador. |
Exemplo #1 Define atributos estendidos no arquivo .wav
<?php
$file = 'minha_música_favorita.wav';
xattr_set($file, 'Artista', 'Alguém');
xattr_set($file, 'Minha avaliação', 'Boa');
xattr_set($file, 'Quantas vezes foi ouvida', '34');
/* ... outro código ... */
printf("Você ouviu esta música %d vezes", xattr_get($file, 'Quantas vezes foi ouvida'));
?>
Be aware when use on filesystem without xattr support, it returns true. (Bug reported)