Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche zwei Funktionen

Einklappen

Neue Werbung 2019

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

  • Suche zwei Funktionen

    Hallo!

    Ich suche folgende zwei Funktionen:

    1. Eine Funktion, die eine Funktion auf alle Elemente eines Arrays ausführt. Hier weiß ich sicher, dass es sie gibt, nur leider finde ich sie nicht mehr.

    2. Eine Funktion, die ein mehrdimensionales Array in ein eindimensionales Array umwandelt, wobei die Schlüsselzuordnung ruhig verloren gehen kann. Klar würde das auch mit zwei verschachtelten foreach-Schleifen gehen, nur mit einer Funktion wäre es besser. Gibt es die?

    Danke!

  • #2
    1/ kannst ja mal bei google "Funktion auf alle Elemente eines Arrays" eingeben. Nein das ist kein witz. -> array_map ()

    2/ kommt drauf an, wie die strukturen vorher/nachher sein sollen

    Kommentar


    • #3
      Zitat von nikosch77
      1/ kannst ja mal bei google "Funktion auf alle Elemente eines Arrays" eingeben. Nein das ist kein witz. -> array_map ()
      Genau diese Funktion war es...Danke

      Zitat von nikosch77
      2/ kommt drauf an, wie die strukturen vorher/nachher sein sollen
      Vorher ist es ein Array, in dem weitere Arrays sind, welche wiederum die Werte enthalten, die nacher auf Ebene 1 in einem Array landen sollen Sprich:

      array ( array (Wert1, Wert2), array(Wert3, Wert4))

      =>

      array (Wert1, Wert3, Wert4, Wert4)

      Kommentar


      • #4
        Nichts für ungut, aber das steht doch in jedem PHP Befehlsverzeichnis! Da muss man halt mal 2-3 zeilen lesen!

        http://de3.php.net/manual/de/ref.array.php
        Für die arrayfunktionen.

        Stichwort "foreach" um ein Array auszulesen.

        Kommentar


        • #5
          Re: Suche zwei Funktionen

          Kleiner Hinweis auf meine ursprüngliche Frage (besonderes Augenmerk sollte dem fett geschriebenen Text gelten):

          Zitat von R4v3r
          [...]

          Eine Funktion, die ein mehrdimensionales Array in ein eindimensionales Array umwandelt, wobei die Schlüsselzuordnung ruhig verloren gehen kann. Klar würde das auch mit zwei verschachtelten foreach-Schleifen gehen, nur mit einer Funktion wäre es besser. Gibt es die?

          [...]

          Kommentar


          • #6
            Die musst du dir selbst basteln. Wollte die Funktion grade schnell basteln, hätte sie array_flatten() genannt. Vorher gegooglet und siehe da:

            http://de.php.net/array
            PHP-Code:
            <?php
            /**
             * Flattens a multimentional array.
             *
             * Takes a multi-dimentional array as input and returns a flattened
             * array as output. Implemented using a non-recursive algorithm.
             * Example:
             * <code>
             * $in = array('John', 'Jim', array('Jane', 'Jasmine'), 'Jake');
             * $out = array_flatten($in);
             * // $out = array('John', 'Jim', 'Jane', 'Jasmine', 'Jake');
             * </code>
             *
             * @author        Jonathan Sharp <jonathan@sharpmedia.net>
             * @var            array
             * @returns        array
             */
            function array_flatten($array)
            {
               while ((
            $v array_shift($array)) !== null) {
                   if (
            is_array($v)) {
                       
            $array array_merge($v$array);
                   } else {
                       
            $tmp[] = $v;
                   }
               }
              
               return 
            $tmp;
            }
            ?>
            PHP rockt echt, für jeden Scheiss gibts schon Code-Schnipsel

            Kommentar


            • #7
              Zitat von Zergling
              PHP rockt echt, für jeden scheibenkleister gibts schon Code-Schnipsel
              Da hast du recht, aber wo bleibt dann der Spaß? Muß man sich eben auf gehobene Anforderungen zurückziehen, da wirds dann dünner mit Codeschnipseln

              Ich würde übrigens ne rekursive Variante vorziehen, das obige Bsp. ändert nämlich die Reihenfolge der Array-Elemente (falls man bei multidim. Array davon sprechen kann...)

              Kommentar

              Lädt...
              X