Be aware when use on filesystem without xattr support, it returns true. (Bug reported)
(PECL xattr >= 0.9.0)
xattr_set — Установка расширенных атрибутов файла
Эта функция устанавливает расширенный атрибут файла.
У расширенных атрибутов
два пространства имён: пользовательское и корневое (root). Пользовательское
пространство имён доступно для всех пользователей, в то время как корневое —
только для пользователей с root-привилегиями. По умолчанию xattr оперирует в
пользовательском пространстве имён, но вы можете изменить это поведение
при помощи аргумента flags
.
filename
Имя файла, атрибут которого нужно установить.
name
Имя расширенного атрибута. При его отсутствии атрибут создаётся,
в противном случае - перезаписывается. Вы можете изменить поведение,
используя флаги (flags
).
value
Значение атрибута.
flags
XATTR_CREATE |
Функция вернёт ошибку, если атрибут существует. |
XATTR_REPLACE |
Функция вернёт ошибку, если атрибут не существует. |
XATTR_DONTFOLLOW |
Не разыменовывать символические ссылки, работать с самой ссылкой. |
XATTR_ROOT |
Установить атрибут в корневом пространстве имён. Требуются права суперпользователя. |
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.
Пример #1 Установить расширенные атрибуты .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)