Documentation PHP

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

bool readline_callback_handler_install ( string $prompt , callback $callback )

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 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

Exemple #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$enull);
    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";
?>



Ceci n'est pas la documentation originale du langage de programmation php, pour y accéder visiter le site www.php.net

Support du web, outils, services, compteurs, scripts, générateurs et autres outils pour les webmasters gratuitement à 100%
Page générée en 0.002421 secondes.