web-dev-qa-db-ja.com

PHPコマンドラインからの入力を待つ

PHPプログラムがユーザーの入力を待機できるようにしたい。たとえば:

  1. スクリプトはサーバーに認証コードを要求します(このコードは電子メールで送信されます)
  2. スクリプトはユーザーが認証コードを入力するのを待ちます
  3. スクリプトは続行します

ステップ2を行うにはどうすればよいですか? (出来ますか?)

65
Keelan

Cliのphp manページには comment here ソリューションの詳細が記載されています(探している人のためにここにコピーされています)

<?php
echo "Are you sure you want to do this?  Type 'yes' to continue: ";
$handle = fopen ("php://stdin","r");
$line = fgets($handle);
if(trim($line) != 'yes'){
    echo "ABORTING!\n";
    exit;
}
fclose($handle);
echo "\n"; 
echo "Thank you, continuing...\n";
?>
151
Crisp