Чтение PHP fscanf - PullRequest
       8

Чтение PHP fscanf

0 голосов
/ 28 февраля 2019

Я пытался читать числа из онлайн-курса с заданным вводом как STDIN, и мой файл выглядит так:

2
3 15

Я читаю 2 и 3, как я могу прочитать 15?

мой код:

    <?php
    /*
    // Sample code to perform I/O:

    fscanf(STDIN, "%s\n", $name);           // Reading input from STDIN
    echo "Hi, ".$name.".\n";                // Writing output to STDOUT

    // Warning: Printing unwanted or ill-formatted data to output will cause the test cases to fail
    */

    // Write your code here
    fscanf(STDIN, "%s\n", $ammount);
    echo $ammount . "\n";
    for ($i = 0; $i <= $ammount; $i++)
{
    fscanf(STDIN, "%s", $x);
    echo $x . "\n";
}
    ?>

Мой вывод сейчас: 2 3 3, и я хочу 2 3 15

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Я пытался подтолкнуть вас к тому, чтобы использовать пробел в строке формата и считывать ваши входные данные в отдельные переменные, как это.

fscanf(STDIN, "%s %s", $a, $b);
echo $a . ' ' . $b . "\n";
0 голосов
/ 28 февраля 2019

fscanf работает со строками, но %s по умолчанию останавливает чтение в пространстве.Используйте:

fscanf(STDIN, "%[^\n]", $x);

и взорвитесь $x пробелами

...