Ankündigung

Einklappen
Keine Ankündigung bisher.

String bei Zeichen X trennen und in array umwandeln

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • String bei Zeichen X trennen und in array umwandeln

    Hallo,

    folgendes Problem:
    Ich habe Strings, die bei einem bestimmten Zeichen getrennt und danach, je nach dem wie oft das Zeichen vorkommt, in arrays verschachtelt werden sollen.

    Beispiel:

    Code:
    Array
    (
       [test__test2__test3] => test4
    )
    
    wird zu:
    
    Array
    (
    	[test] => Array
    		(
    			[test2] => Array
    				(
    					[test3] => test4
    				)
    		)
    )
    Der rekursive Schleifenteil ist das Problem. Bin eigentlich sicher, dass es dafuer schon dutzende Loesungen gibt, habe nur leider nichts gefunden.

  • #2
    darf man nach dem Sinn Fragen? Weil alle Variablen sind ja nicht wirklich arrays sondern beinhalten genau ein Element.

    Kommentar


    • #3
      Sinn ist, dass damit z.B. Formule ueber PEAR QuickForm erstellt werden sollen. Dort werden zum Teil 2D arrays benoetigt. Da das in der db nicht geht, schieb ich das vorher zusammen mit nem doubleunderscore.

      Kommentar


      • #4
        ich würde mit http://www.php.net/manual/de/function.explode.php und http://www.php.net/manual/de/function.preg-match.php arbeiten
        mfg

        Kommentar


        • #5
          Habs grad mal verbessert, das erste ist auch ein array.

          edit: Wie gesagt das ist nicht das Problem, das hier steht schon

          Code:
          foreach($val as $k=>$v) {
          	if(preg_match('/\_\_/', $k)) {
          		$ar = explode("__", $k);
          
          	}
          }

          Kommentar


          • #6
            hier die Lösung

            phpforum.de

            :P
            [I]"Weaseling out of things is important to learn. It's what separates us from the animals ... except the weasel." (Homer J. Simpson)[/I]

            Kommentar

            Lädt...
            X