readline_callback_handler_install
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
readline_callback_handler_install — readline 콜백 인터페이스와 터미널을 초기화하고 프롬프트를 출력하고 즉시 반환합니다.
설명
readline_callback_handler_install(string $prompt
, callable $callback
): bool
readline 콜백 인터페이스를 설정한 다음 prompt
를 인쇄하고 즉시 반환합니다. 이전 콜백 인터페이스를 제거하지 않고 이 함수를 두 번 호출하면 이전 인터페이스를 자동으로 편리하게 덮어씁니다.
콜백 기능은 readline()과 달리 IO 및 사용자 입력의 인터리빙을 허용하므로 stream_select()와 결합할 때 유용합니다.
매개변수
prompt
- 프롬프트 메시지입니다.
callback
callback
함수는 하나의 매개변수를 취합니다. 사용자 입력이 반환되었습니다.
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
Examples
예제 #1 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] Enter something: ", 'rl_callback');
}
}
$c = 1;
$prompting = true;
readline_callback_handler_install("[$c] Enter something: ", 'rl_callback');
while ($prompting) {
$w = NULL;
$e = NULL;
$n = stream_select($r = array(STDIN), $w, $e, null);
if ($n && in_array(STDIN, $r)) {
// read a character, will call the callback when a newline is entered
readline_callback_read_char();
}
}
echo "Prompting disabled. All done.\n";
?>
기타
- readline_callback_handler_remove() - 이전에 설치된 콜백 핸들러를 제거하고 터미널 설정을 복원합니다.
- readline_callback_read_char() - 문자를 읽고 줄이 수신되면 readline 콜백 인터페이스에 알립니다.
- stream_select() - 초 및 마이크로초로 지정된 시간 제한을 사용하여 지정된 스트림 배열에서 select() 시스템 호출과 동일한 기능을 실행합니다.