Please note that this method doesn't exist in the Windows version of readline. That's not a PHP issue, but an upstream issue in the WinEdit/Readline library that has yet to implement it.(PHP 5 >= 5.1.0, PHP 7, PHP 8)
readline_callback_read_char — Liest ein Zeichen und informiert das readline-Callback-Interface, wenn die Eingabezeile abgeschlossen wurde
Liest ein Zeichen der Benutzereingabe ein. Wenn eine Eingabezeile abgeschlossen ist, informiert diese Funktion das readline-Callback-Interface, das mittels readline_callback_handler_install()
Diese Funktion besitzt keine Parameter.
Es wird kein Wert zurückgegeben.
Werfen Sie auch einen Blick auf die Dokumentation der Funktion readline_callback_handler_install(), dort finden Sie ein Beispiel zur Verwendung des readline-Callback-Interfaces.
Please note that this method doesn't exist in the Windows version of readline. That's not a PHP issue, but an upstream issue in the WinEdit/Readline library that has yet to implement it.It seems this function is not blocking anymore:
<?php
do {
readline_callback_read_char();
$str = readline_info('line_buffer');
echo '.';
} while (strlen($str) < 10);
echo PHP_EOL . $str . PHP_EOL;
?>Note that this function is blocking if there is no character to read
If you don`t want to get blocked, you should use the trick with stream_select()
It also only reads one char per call,
So if something else in your script is blocking,
you`ve got a problem