# ID3 Functions

## Introduction

These functions let you read and manipulate ID3 tags. ID3 tags are used in MP3 files to store title of the song, as well as information about the artist, album, genre, year and track number.

Since version 0.2 it is also possible to extract text frames from ID3 v2.2+ tags.

## Requirements

No external libraries are needed to build this extension.

## Installation

id3 is part of PECL and can be installed using the PEAR installer. To compile PHP with id3 support, download the sourcecode, put it in php-src/ext/id3 and compile PHP using --enable-id3.

## Runtime Configuration

This extension has no configuration directives defined in php.ini.

## Resource Types

This extension has no resource types defined.

## Predefined Constants

Most of the id3 functions either let you specify or return a tag version. In order to specify the version please use on of these constants.

`ID3_V1_0` (integer)
  `ID3_V1_0` is used if you are working with ID3 V1.0 tags. These tags may contain the fields title, artist, album, genre, year and comment.
`ID3_V1_1` (integer)
  `ID3_V1_1` is used if you are working with ID3 V1.1 tags. These tags may all information contained in v1.0 tags plus the track number.
`ID3_V2_1` (integer)
  `ID3_V2_1` is used if you are working with ID3 V2.1 tags.
`ID3_V2_2` (integer)
  `ID3_V2_2` is used if you are working with ID3 V2.2 tags.
`ID3_V2_3` (integer)
  `ID3_V2_3` is used if you are working with ID3 V2.3 tags.
`ID3_V2_4` (integer)
  `ID3_V2_4` is used if you are working with ID3 V2.4 tags.
`ID3_BEST` (integer)
  `ID3_BEST` is used if would like to let the id3 functions determine which tag version should be used.

## Table of Contents

- id3_get_frame_long_name — Get the long name of an ID3v2 frame
- id3_get_frame_short_name — Get the short name of an ID3v2 frame
- id3_get_genre_id — Get the id for a genre
- id3_get_genre_list — Get all possible genre values
- id3_get_genre_name — Get the name for a genre id
- id3_get_tag — Get all information stored in an ID3 tag
- id3_get_version — Get version of an ID3 tag
- id3_remove_tag — Remove an existing ID3 tag
- id3_set_tag — Update information stored in an ID3 tag