Beispiel:PHP - Array mit stdin ganzzahlige Eingang gefüllt
$_fp = fopen("file.txt", "r");
/* STDIN = "4 7 6 24 1"; */ <== user input
$input[] = fgets($_fp);
print_r($input);
OUTPUT:
Array
(
[0] => 4 7 6 24 1
)
gewünschter Ausgang:
Array
(
[0] => 4
[1] => 7
[2] => 6
[3] => 24
[4] => 1
)
Gibt es eine Methode Räume von ganzzahligen Eingabe zu entfernen, nachdem jedes in ein Array eingeben? In einer Weise, die gesamte Eingabe als eine einzige Zeile zu vermeiden.
i verwenden jetzt $input[] = explode(' ', trim(fgets($_fp)));
wenn zweite Linie ist es nur die erste Zeile des STDIN i alle Zeilen und sie lesen müssen setzt Variable in den Eingang für Echo
while($f = fgets(STDIN)){ echo "line: $f"; }
ist großer Einsatz hier es in Ordnung ist, setzen Alle Linien aber kippen jede Zeile zu einer Variablen oder Array noch nicht sicher .. zuweisen, wenn i sollte array_push()
da i 2 Zeilen als Variablen benötigen, und als Arrays ruht ..
seine funktioniert! aber ist es effizient, auf Werte über $ input statt $ input [0] zuzugreifen, da. print_r ($ input); Array ( [0] => Array ( [0] => 4 [1] => 7 [2] => 6 [3] => 24 [4] => 1 ) ) zum Beispiel $ sum = array_sum ($ input); = // 0 –
Ich gebe Ihnen zwei Versionen, wenn Sie nur eine Zeile haben, verwenden Sie die erste. –
Array haben sehr hohe Leistung Zugriff auf Elemente –