8.111 Readline (GNU)
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . readline_add_history ->readline_callback_handler_install . readline_callback_handler_remove . readline_callback_read_char . readline_clear_history . readline_completion_function . readline_info . readline_list_history . readline_on_new_line . readline_read_history . readline_redisplay . readline_write_history . readline
|
8.111.8 readline_callback_handler_install()Initialise l'interface et le terminal de callback de readline, affiche le prompt et retourne immédiatement[ Exemples avec readline_callback_handler_install ] PHP 5 >= 5.1.0RC1
bool
readline_callback_handler_install (
string
prompt
,
callback
callback
)
readline_callback_handler_install
définie une interface
de calback pour readline, affiche le
prompt
et
retourne immédiatement. La fonction
callback
prend
un paramètre : l'entrée utilisateur retournée. Appeler cette fonction deux fois sans
effacer au préalable l'interface de callback précédente effacera automatiquement
et proprement l'ancienne interface.
La fonctionnalité de callback est très utile lorsque combinée
à la fonction
stream_select
permettant
l'interconnexion IO / entrée utilisateur, à la différence de
readline
.
Cette fonction retourne
TRUE
en cas de
succès,
FALSE
en cas d'échec.
| Exemple d'interface de callback Readline |
<?php function rl_callback($ret) { global $c, $prompting;
echo "Votre entrée : $ret\n"; $c++;
if ($c > 10) { $prompting = false; readline_callback_handler_remove(); } else { readline_callback_handler_install("[$c] Enter something: ", 'rl_callback'); } }
$c = 1; $prompting = true;
readline_callback_handler_install("[$c] Enter something: ", 'rl_callback');
while ($prompting) { $n = stream_select($r = array(STDIN), $w = null, $e = null, null); if ($n && in_array(STDIN, $r)) { // lit un caractère, appelera la fonction de callback lorsqu'une nouvelle ligne est entrée readline_callback_read_char(); } }
echo "Le prompt est désactivé. Tout a été effectué.\n"; ?>
|
readline_callback_handler_remove
,
readline_callback_read_char
et
stream_select
.
|