Ich habe ein Array in PHP, das alle Zeilen einer Textdatei enthält (jede Zeile ist ein Wert des Arrays). Meine Textdatei hatte leere Zeilen, daher hat das Array auch leere Zeilen. Ich wollte das Array für einen bestimmten Wert wie folgt zu:PHP und Javascript-Array - leere Werte überspringen und neue Array hinzufügen?
$array = array();
$lines = file("textfile.txt"); //file in to an array
foreach ($lines as $line)
{
if (stripos($line, "$$") !== false)
{
$array[] = str_replace("$$", "", $line);
}
}
Der obige Code ist für einen $$ suchen und es mit einem leeren zu ersetzen. Die Textdatei enthält eine Zeile mit einer Zahl von $ 1 oder einer beliebigen Zahl, und ich möchte, dass sie alle Instanzen dieser Zeile findet, was sie tut.
Mein Problem ist, dass ich möchte, dass es die nächsten 5 Zeilen findet, die nicht leer sind, nachdem die $$ (Zahl) gefunden und in ein multidimensionales Array gelegt wurde. Die mehrdimensionale Array sucht ähnlich wie diese (das Programm ist ein Test, falls Sie sich fragen, warum das Array die Art und Weise gestattet es ist):
$test = array(
array('question' => 'What is the answer', 'ansa' => "answera", 'ansb' => "answerb", 'ansc' => "answerc", 'ansd' => "answerd"), // $test[1]
array('question' => 'What is the answer', 'ansa' => "answera", 'ansb' => "answerb", 'ansc' => "answerc", 'ansd' => "answerd"), // $test[2]
);
Die nächsten fünf Zeilen nach der $$ (Zahl) sind eine Frage und vier Antworten, die in das Array gehen müssen. Mein Code mit regxp und Suche funktioniert nicht, also habe ich ihn verworfen.
Dies würde nicht für leere Zeilen überprüfen, die einfach hinzugefügt werden können. Sie können es auch durch eine 'for'-Schleife ersetzen, damit Sie die nächsten Dateizeilen überspringen können, damit sie nicht unnötigerweise durchgeschleift werden. –
leere Zeilen mit '$ lines = array_filter (Datei ('text.txt'));' ... Hosh, Sie haben Recht, aber das ist nur ein Beispiel. – Alex
Ja, die wichtigste Zeile, über die ich verwirrt war. Ich danke dir sehr! –