readline_callback_handler_install
(PHP 5 >= 5.1.0)
readline_callback_handler_install — Initialise l'interface et le terminal de callback de readline, affiche le prompt et retourne immédiatement
Description
Définie une interface de calback pour readline, affiche le prompt et retourne immédiatement. 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().
Liste de paramètres
- prompt
-
Le message de prompt.
- callback
-
La fonction callback prend un paramètre : l'entrée utilisateur retournée.
Valeurs de retour
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemples
Example#1 Exemple d'interface de callback 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";
?>