PHP Conference Japan 2024

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 在根(受信任)命名空间中设置属性。需要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');

/* ... 其他代码 ... */

printf("您已播放这首歌 %d 次", xattr_get($file, 'Listen count'));
?>

参见

添加备注

用户贡献的注释 1 条注释

0
blr at blr dot hu
9年前
注意,在没有xattr支持的文件系统上使用时,它会返回true。(已报告错误)
To Top