JavaScript Editor Javascript debugger     Website design 

GNU Readline


The readline functions implement an interface to the GNU Readline library. These are functions that provide editable command lines. An example being the way Bash allows you to use the arrow keys to insert characters or scroll through command history. Because of the interactive nature of this library, it will be of little use for writing Web applications, but may be useful when writing scripts used from a command line.


This extension is not available on Windows platforms.


To use the readline functions, you need to install libreadline. You can find libreadline on the home page of the GNU Readline project, at » It's maintained by Chet Ramey, who's also the author of Bash.

You can also use these functions with the libedit library, a non-GPL replacement for the readline library. The libedit library is BSD licensed and available for download from »


To use these functions you must compile the CGI or CLI version of PHP with readline support. You need to configure PHP --with-readline[=DIR]. In order you want to use the libedit readline replacement, configure PHP --with-libedit[=DIR].

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

readline_add_history — Adds a line to the history
readline_callback_handler_install — Initializes the readline callback interface and terminal, prints the prompt and returns immediately
readline_callback_handler_remove — Removes a previously installed callback handler and restores terminal settings
readline_callback_read_char — Reads a character and informs the readline callback interface when a line is received
readline_clear_history — Clears the history
readline_completion_function — Registers a completion function
readline_info — Gets/sets various internal readline variables
readline_list_history — Lists the history
readline_on_new_line — Inform readline that the cursor has moved to a new line
readline_read_history — Reads the history
readline_redisplay — Redraws the display
readline_write_history — Writes the history
readline — Reads a line