(PHP 5 >= 5.1.0, PHP 7)
readline_callback_handler_install — Inicializa la interfaz de llamada de readline y la terminal, imprime el mensaje y retorna inmediatamente
   Configura una interfaz de llamada readline y luego imprime 
   mensaje, luego de lo cual retorna.
   Si llamas a esta función más de una vez sin eliminar la interfaz 
   de llamada anterior automaticamente reemplazará la versión anterior.
  
La interfaz de llamada es útil cuando se combina con stream_select() ya que permite la intercalación de IO (entrada/salida) y entrada del usuario, a diferencia de readline().
mensajeEl mensaje a imprimir.
funcion
       La función funcion recibe un parámetro;
       la entrada del usuario retornada.
      
   Devuelve TRUE en caso de éxito o FALSE en caso de error.
  
Ejemplo #1 Ejemplo de interfaz de llamada readline
<?php
function rl_callback($ret)
{
    global $c, $prompting;
    echo "Has ingresado: $ret\n";
    $c++;
    if ($c > 10) {
        $prompting = false;
        readline_callback_handler_remove();
    } else {
        readline_callback_handler_install("[$c] Ingresa algo: ", 'rl_callback');
    }
}
$c = 1;
$prompting = true;
readline_callback_handler_install("[$c] Ingresa algo: ", 'rl_callback');
while ($prompting) {
    $w = NULL;
    $e = NULL;
    $n = stream_select($r = array(STDIN), $w, $e, null);
    if ($n && in_array(STDIN, $r)) {
        // lee un carácter, llama a la funcion cuando una nueva línea es ingresada
        readline_callback_read_char();
    }
}
echo "Mensaje deshabilitado. Todo hecho.\n";
?>