JavaScript Editor Javascript debugger     Website design 

GNU Recode Functions


This module contains an interface to the GNU Recode library. The GNU Recode library converts files between various coded character sets and surface encodings. When this cannot be achieved exactly, it may get rid of the offending characters or fall back on approximations. The library recognises or produces nearly 150 different character sets and is able to convert files between almost any pair. Most » RFC 1345 character sets are supported.


This extension is not available on Windows platforms.


You must have GNU Recode 3.5 or higher installed on your system. You can download the package from »


The Recode library version 3.6 adds weird characters behind converted strings under certain circumstances. Thus it's safer to use Recode v3.5 or one of the available alternatives like the iconv or mbstring extension.


To be able to use the functions defined in this module you must compile your PHP interpreter using the --with-recode[=DIR] option.


Crashes and startup problems of PHP may be encountered when loading the recode as extension after loading any extension of mysql or imap. Loading the recode before those extension has proved to fix the problem. This is due a technical problem that both the c-client library used by imap and recode have their own hash_lookup() function and both mysql and recode have their own hash_insert function.


The IMAP, recode, YAZ and Cyrus extensions cannot be used in conjuction, because they all share the same internal symbol.

Runtime Configuration

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

Resource Types

This extension has no resource types defined.

Predefined Constants

This extension has no constants defined.

Table of Contents

recode_file — Recode from file to file according to recode request
recode_string — Recode a string according to a recode request
recode — Alias of recode_string()