• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Multidimensionales Array erweitern

Space Vampire

Senior HTML'ler
Ich lese aus mehreren Website bestimmte Werte aus. Eine einfache Ausgabe per foreach klappt auch einwandfrei. Jeder Datensatz wird korrekt erhoben und einmal ausgegeben.
Ich muss die Datensätze aber weiterverarbeiten und zu diesem Zweck möchte ich sie in einem multidimensionalen Array zusammenführen.
Aber das klappt nicht so ganz.
Jedes Mal, wenn die foreach ein weiteres Array in das bestehende Array hinzufügt, schreibt sie es ins "Root"-Array und in jedes darin befindliche Array. Ich hab mich jetzt schon einmal quer durchs Netz gegoogelt aber nichts hat funktioniert (eckige Klammern, etc..).
Ich hab das Script jetzt mal auf meine ursprüngliche Variante zurückgesetzt, die meinem Empfinden nach eigentlich funktionieren müsste...aber es halt nicht tut.

Kann mir jemand sagen, was ich falsch mache?

PHP:
<?php
// Die auszulesenden Listings
$urls = array(
    "https://www.geocaching.com/track/details.aspx?guid=891d8102-732d-416d-ae69-0d0fcef0e7c3",
    "https://www.geocaching.com/track/details.aspx?guid=500a4523-045f-4807-9b34-c3007f94e64a",
    "https://www.geocaching.com/track/details.aspx?guid=002767cd-ae78-4e8e-a4f4-2f09f0f159a2",
    "https://www.geocaching.com/track/details.aspx?guid=401f2173-5bc7-4d52-ac85-ea5e4f4e6c1a",
    "https://www.geocaching.com/track/details.aspx?guid=13a0e67d-1560-476c-a91c-cf1090e53145",
    "https://www.geocaching.com/track/details.aspx?guid=2bc26fda-d16d-4330-8868-4f42e821ea98",
    "https://www.geocaching.com/track/details.aspx?guid=296b1dbd-c07e-4c0e-948e-311ecb284644",
    "https://www.geocaching.com/track/details.aspx?guid=b4628966-c062-4496-b7be-00a4e408e64e",
    "https://www.geocaching.com/track/details.aspx?guid=949502a0-493f-4841-9599-9fa366d5c25a",
    "https://www.geocaching.com/track/details.aspx?guid=bae4c9ea-69a2-48ec-8904-e763691a7899",
    "https://www.geocaching.com/track/details.aspx?guid=427fa743-cf44-4407-8cbf-ea7f3192ee6a",
    "https://www.geocaching.com/track/details.aspx?guid=47f4b28d-8617-42b2-990e-c3294df13249",
    "https://www.geocaching.com/track/details.aspx?guid=48ca7ae9-f649-4835-9d81-e22f53df2849"
);

//Ein leeres Array erstellen
$teilnehmer_daten = array();

// Die Werte aus den Listings auslesen
foreach($urls as $url){
    $html = file_get_contents($url);

    //Hier werden jetzt einige Werte ausgelesen. Dieser teil funktioniert einwandfrei, deswegen hab ich ihn, der Übersicht halber entfernt
    }
    
    //DIESER TEIL IST DER; DER NICHT FUNKTIONIERT
    //Daten in mehrdimensionales Array schreiben
    array_push($teilnehmer_daten, array("Kilometer" => $km, "Name" => $name, "Distanz" => $distanz, "Owner" => $owner, "Verbleib" => $last, "Bild" => $img));
    var_dump($teilnehmer_daten);
}
?>
 
Werbung:
Wie wäre es mit
PHP:
$teilnehmer_daten[$url] = array("Kilometer" => $km,
                                "Name" => $name,
                                "Distanz" => $distanz,
                                "Owner" => $owner,
                                "Verbleib" => $last,
                                "Bild" => $img);
 
Werbung:
Vergesst es. Ich hab den Fehler gefunden. Ich führe var_damp innerhalb der Schleife aus. Das Array wird also bei jedem Durchgang ausgegeben. darum sieht es so aus, als würde das ineinander verschachtelt.
 
Zurück
Oben