DrDreist Geschrieben 4. Dezember 2009 Teilen Geschrieben 4. Dezember 2009 Hallo Community, ich komm leider nicht weiter, also irgendwo ist nen Denkfehler bei mir ^^ Und zwar geht es um Folgendes: Ich lese aus einer Datei einen String aus, der wie folgt auf gebaut ist: echo "Wert1;Wert2;Wert3;Wert4;" So nun hätte ich gern diesen String als Array. Mit der Funktion: $meinArray[] = explode( ";", $string ) Als Ergebnis bekomm ich nun ein indiziertes Array das wie folgt aussieht: meinArray[0] = Wert1; meinArray[1] = Wert2; Nun hätt ich aber gern ein assoziatives Array. Natürlich könnt ich jetzt hergehen und meinArray['Biersorte'] = $meinArray[0]; unset $meinArray[0]; usw. aber das ist bei 500 Arrays à 10 Felder vielleicht nicht ganz so performant. Deshalb meine Frage gibt es eine Funktion oder eine Ableitung der Funktion explode die mir direkt ein assoziatives Array erzeugt? Vll mit einem vorderfinierten Array. Schon mal danke fürs Lesen. Grüße Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
_n4p_ Geschrieben 4. Dezember 2009 Teilen Geschrieben 4. Dezember 2009 PHP: array_combine - Manual $aArrayKeys = {'eins','zwei','drei'}; $deinArray = explode (';',$sWerte); $aFinal = array_combine($aArrayKeys,$deinArray); echo '<pre>'.print_r($aFinal,true).'</pre>'; Gibt FALSE zurück, wenn die Anzahl von Elementen nicht in beiden Arrays identisch ist oder die Arrays leer sind. heißt, es funktioniert nur wenn deine 500 arrays wirklich alle die gleiche länge haben. bzw müsstest sie dann der länge nach gruppiert verarbeiten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DrDreist Geschrieben 4. Dezember 2009 Autor Teilen Geschrieben 4. Dezember 2009 Super vielen Dank. Das war genau das nach was ich gesucht hatte Lösung sieht wie folgt aus: foreach ($content as $value) { # Auf eventuelle Leerzeilen reagieren if ( strstr($value, ";") !== false ) { $values = explode(";", $value); $journal[] = array_combine( $keys, $values); } } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.