readline callback handler install(): Skillnad mellan sidversioner
Admin (diskussion | bidrag) Ingen redigeringssammanfattning |
Admin (diskussion | bidrag) |
||
| (En mellanliggande sidversion av samma användare visas inte) | |||
| Rad 5: | Rad 5: | ||
==== Beskrivning ==== | ==== Beskrivning ==== | ||
`readline_callback_handler_install(string $prompt, callable $callback): bool` | '''''`readline_callback_handler_install(string $prompt, callable $callback): bool`''''' | ||
Sätter upp ett readline-callback-gränssnitt, skriver ut prompten och återvänder omedelbart. Om denna funktion anropas två gånger utan att ta bort det tidigare callback-gränssnittet, kommer det gamla gränssnittet automatiskt att ersättas. | Sätter upp ett readline-callback-gränssnitt, skriver ut prompten och återvänder omedelbart. Om denna funktion anropas två gånger utan att ta bort det tidigare callback-gränssnittet, kommer det gamla gränssnittet automatiskt att ersättas. | ||
| Rad 12: | Rad 12: | ||
==== Parametrar ==== | ==== Parametrar ==== | ||
'''prompt:''' | |||
Meddelandet som visas för användaren som en prompt. | |||
'''callback:''' | |||
Callback-funktionen tar ett parameter; användarinmatningen som returneras. | |||
==== Returvärden ==== | ==== Returvärden ==== | ||
Nuvarande version från 23 oktober 2024 kl. 06.53
readline_callback_handler_install
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
readline_callback_handler_install — Initierar readline-callback-gränssnittet och terminalen, skriver ut prompten och återvänder omedelbart
Beskrivning
`readline_callback_handler_install(string $prompt, callable $callback): bool`
Sätter upp ett readline-callback-gränssnitt, skriver ut prompten och återvänder omedelbart. Om denna funktion anropas två gånger utan att ta bort det tidigare callback-gränssnittet, kommer det gamla gränssnittet automatiskt att ersättas.
Callback-funktionen är användbar i kombination med `stream_select()` eftersom den möjliggör att växla mellan IO och användarinmatning, till skillnad från den vanliga readline()-funktionen.
Parametrar
prompt: Meddelandet som visas för användaren som en prompt.
callback: Callback-funktionen tar ett parameter; användarinmatningen som returneras.
Returvärden
Returnerar true vid framgång eller false vid misslyckande.
Exempel
Exempel #1 Readline-callback-gränssnittsexempel
<?php
function rl_callback($ret)
{
global $c, $prompting;
echo "Du skrev: $ret\n";
$c++;
if ($c > 10) {
$prompting = false;
readline_callback_handler_remove();
} else {
readline_callback_handler_install("[$c] Skriv något: ", 'rl_callback');
}
}
$c = 1;
$prompting = true;
readline_callback_handler_install("[$c] Skriv något: ", 'rl_callback');
while ($prompting) {
$w = NULL;
$e = NULL;
$n = stream_select($r = array(STDIN), $w, $e, null);
if ($n && in_array(STDIN, $r)) {
// Läs ett tecken, anropar callback när en radmatartecken matas in
readline_callback_read_char();
}
}
echo "Promptning inaktiverad. Allt klart.\n";
?>
Se även
- readline_callback_handler_remove() — Tar bort en tidigare installerad callback-hanterare och återställer terminalinställningarna
- readline_callback_read_char() — Läser ett tecken och informerar readline-callback-gränssnittet när en rad tas emot
- stream_select() — Kör motsvarande select()-systemanrop på de angivna array:erna av strömmar med en timeout specificerad i sekunder och mikrosekunder
Sidslut
Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.readline-callback-handler-install.php
PHP Funktioner Funktionsreferens
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp och Datorservice som har sponsrat Linux.se med webserver.