php-填充了stdin整数输入的数组



示例:

$_fp = fopen("file.txt", "r");
/* STDIN = "4 7 6 24 1"; */ <== user input
$input[] = fgets($_fp);
print_r($input);

输出:

Array
(
    [0] => 4 7 6 24 1
)

所需的输出:

Array
(
    [0] => 4
    [1] => 7
    [2] => 6
    [3] => 24
    [4] => 1
)

输入每个数组后,是否有任何方法可以从整数输入中删除空格?以避免将整个输入作为一行的方式。

我现在使用了$input[] = explode(' ', trim(fgets($_fp)));,当有第二行时,它仅放置了stdin的第一行,我需要读取所有行并将它们放入输入变量

while($f = fgets(STDIN)){ echo "line: $f"; }在这里很有用可以回音所有行无法将每行分配给变量或数组。.不确定我是否应该array_push(),因为我需要2行作为变量,并作为阵列休息。

使用修剪删除行的" n",使用将其转换为数组。

实时演示

$input = explode(' ', trim(fgets($_fp)));

如果您有更多行,请在下面使用:

$input[] = explode(' ', trim(fgets($_fp)));

即使我们可以尝试使用regx的preg_match_all也给出所有情况,例如,如果您有双重空间或Interger字符串之间的任何文本

$string = "4   7  6  24 1";
$string = "4 test df 7 6 24 1"; 
$string = "4 7 6 24 1";
preg_match_all('!d+!', $string, $matches);
print_r($matches);

最新更新