(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
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() .
Le message de prompt.
La fonction callback prend un paramètre : l'entrée utilisateur retournée.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemple 2235. 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"
;
?>