xattr_set

(PECL xattr >= 0.9.0)

xattr_set Установка расширенных атрибутов файла

Описание

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

Эта функция устанавливает расширенный атрибут файла.

Расширенные атрибуты разделяются на два пространства имён: пользовательское и корневое. Пользовательское пространство имён доступно каждому пользователю, тогда как корневое — только пользователям с root-привилегиями. Механизм xattr по умолчанию работает с пользовательским пространством имён, но поведение изменяется через параметр flags.

Список параметров

filename

Имя файла, атрибут которого нужно установить.

name

Имя расширенного атрибута. При его отсутствии атрибут создаётся, в противном случае - перезаписывается. Вы можете изменить поведение, используя флаги (flags).

value

Значение атрибута.

flags

Поддерживаемые xattr-флаги
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'));
?>

Смотрите также

  • xattr_get() - Получает расширенные атрибуты файла
  • xattr_remove() - Удаление расширенных атрибутов файла

Добавить

Примечания пользователей 1 note

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