PHP ждет ввода из командной строки

47

Я хочу, чтобы PHP-программа могла ждать ввода пользователя. Например:

  • Script запрашивает код авторизации с сервера (этот код будет отправлен по электронной почте)
  • Script ожидает, что пользователь вводит код авторизации
  • Script продолжается

Как мне сделать шаг 2? (Возможно ли это?)

  • 1
    Как насчет чтения страницы справочника по использованию php cli, особенно полезным будет этот комментарий -> php.net/manual/en/features.commandline.php#94924
  • 0
    Спасибо @Crisp, вы можете сделать это ответ.
Показать ещё 3 комментария
Теги:
command-line

1 ответ

106
Лучший ответ

На странице php man для cli есть комментарий здесь, в котором подробно описывается решение (скопировано здесь для кого-то другого)

<?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";
?>
  • 7
    Это золото. Имея довольно большое "Ого!" Вибрация здесь, после нескольких лет PHP, я только что узнал, что вы можете сделать это.
  • 0
    Может это делать цикл, который заканчивается на входе?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню