(PHP 5 >= 5.1.0, PHP 7)
readline_callback_handler_install — Initialise l'interface et le terminal de rappel de readline, affiche le prompt et retourne immédiatement
Définie une interface de rappel pour readline, affiche le
prompt
et retourne immédiatement.
Appeler cette fonction deux fois sans effacer au préalable l'interface
de rappel précédente effacera automatiquement
et proprement l'ancienne interface.
La fonctionnalité de rappel est très utile lorsque combinée à la fonction stream_select() permettant l'interconnexion IO / entrée utilisateur, à la différence de readline().
prompt
Le message de prompt.
callback
La fonction callback
prend
un paramètre : l'entrée utilisateur retournée.
Cette fonction retourne TRUE
en cas de
succès ou FALSE
si une erreur survient.
Exemple #1 Exemple d'interface de rappelde Readline
<?php
function rl_callback($ret)
{
global $c, $prompting;
echo "You entered: $ret\n";
$c++;
if ($c > 10) {
$prompting = false;
readline_callback_handler_remove();
} else {
readline_callback_handler_install("[$c] Entrer quelque chose : ", 'rl_callback');
}
}
$c = 1;
$prompting = true;
readline_callback_handler_install("[$c] Entrer quelque chose : ", 'rl_callback');
while ($prompting) {
$w = NULL;
$e = NULL;
$n = stream_select($r = array(STDIN), $w, $e, 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";
?>