めも。
// 警告文を出す際のなんらかの条件式
if(true) {
// コンソール上に表示する出力文
echo '警告文 [y/n] : ';
$input = null;
while(1) {
$input = fgets(STDIN, 4096);
if($input == "n\n" || $input == "no\n") {
// 処理を終了する
die();
}
if($input == "y\n" || $input == "yes\n") {
// 処理を続行する
break;
}
echo '[y] [yes] [n] [no] のいずれかを入力してください : ';
}
}
こんな感じでOK。
ちなみにSTDINはstdinへのオープン済みストリーム。そのためfopenなどでのストリームオープン無しに利用することが可能。
fgets(STDIN)とするとその地点で入力待機状態になるため、コンソール上から値を入力することができる。