CLXVI. xattr Functions

Introduction

The xattr extension allows for the manipulation of extended attributes on a filesystem.

Requirements

To use xattr, you will need libattr installed. It is available at http://oss.sgi.com/projects/xfs/.

Note: These functions only work on filesystems that support extended attributes, and have them enabled at mount time. Some common filesystems that support extended attributes are ext2, ext3, reiserfs, jfs, and xfs.

Installation

xattr is currently available through PECL http://pecl.php.net/package/xattr.

If PEAR is available on your *nix-like system you can use the pear installer to install the xattr extension, by the following command: pear -v install xattr.

You can always download the tar.gz package and install xattr by hand:

Example 1. xattr install by hand

gunzip xattr-xxx.tgz
tar -xvf xattr-xxx.tar
cd xattr-xxx
phpize
./configure && make && make install

Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

XATTR_ROOT (integer)

Set attribute in root (trusted) namespace. Requires root privileges.

XATTR_DONTFOLLOW (integer)

Do not follow the symbolic link but operate on symbolic link itself.

XATTR_CREATE (integer)

Function will fail if extended attribute already exists.

XATTR_REPLACE (integer)

Function will fail if extended attribute doesn't exist.

Table of Contents
xattr_get --  Get an extended attribute
xattr_list --  Get a list of extended attributes
xattr_remove --  Remove an extended attribute
xattr_set --  Set an extended attribute
xattr_supported --  Check if filesystem supports extended attributes