Ergebnis 1 bis 1 von 1

Thema: Arrays zusammenfügen (Reißverschluss)

  1. #1
    Teeny
    Registriert seit
    06.01.2014
    Beiträge
    27
    Danke
    1
    Bekam 1 mal "Danke" in 1 Posting

    Standard Arrays zusammenfügen (Reißverschluss)

    Hallo zusammen!

    Hab eben eine Funktion gebraucht die 2 Arrays wie einen Reißverschluss zusammenfügt.
    Da PHP da nichts brauchbares liefert hab ich was gebastelt.
    Vielleicht kanns ja wer brauchen

    Sicher nicht die sauberste Lösung, aber man bekommt was man will.

    PHP-Code:
    <?php
    // Arrays im "Reißverschluss-Verfahren" zusammenführen
    //
    // Die Schlüssel beider Arrays bleiben erhalten und werden bei Gleichwertigkeit mit einem Postfix versehen
    //
    // Arrays unterschiedlicher Größe:
    // - Das größere Array zuerst angeben, sonst wird es "abgeschnitten" sobald das Ende des Kleineren erreicht ist.
    // - Wenn das Ende des Kleineren erreicht ist wird der Rest des Größeren der Reihe nach angefügt.

    function array_zip($arr1$arr2){

        
    $newarr = array();
        
    $postfix 1;
        
    $index1 array_keys($arr1);
        
    $index2 array_keys($arr2);
        
    $count2 count($arr2);

        
        foreach(
    $index1 as $key => $value){
        
            if(
    array_key_exists($value$newarr)){
                
    $newkey1 $value.'_'.$postfix;
                
    $postfix++;    
            }
            else{
                
    $newkey1 $value;
            }
            
            
            
    $newarr[$newkey1] = $arr1[$value];
            
            
            if(
    $key $count2){
                if(
    array_key_exists($index2[$key], $newarr)){
                    
    $newkey2 $index2[$key].'_'.$postfix;
                    
    $postfix++;    
                }
                else{
                    
    $newkey2 $index2[$key];
                }
            }
            else{
                
    $newkey2 '';
            }
            
            
            if(!empty(
    $newkey2)){
                
    $newarr[$newkey2] = $arr2[$index2[$key]];
            }
            
        }
        
        return 
    $newarr;
    }


    $beispiel1 = array('a' => 'The''b' => 'brown''c' => 'jumps''d' => 'the''e' => 'dog''x' => 'Lorem''y' => 'ipsum');
    $beispiel2 = array('a' => 'quick''b' => 'fox''c' => 'over''d' => 'lazy');

    print_r(array_zip($beispiel1$beispiel2));

    /* Ergebnis:
    Array
    (
        [a] => The
        [f] => quick
        [b] => brown
        [a_1] => fox
        [c] => jumps
        [g] => over
        [d] => the
        [h] => lazy
        [e] => dog
        [x] => Lorem
        [y] => ipsum
    )
    */
    ?>
    Grüße, Kemos
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von Kemos (26.01.2014 um 02:08 Uhr)

Ähnliche Themen

  1. Bild zusammenfügen Unterstützung zu Gimp
    Von Unregistriert im Forum Forum für Grafiken und Bildbearbeitung
    Antworten: 5
    Letzter Beitrag: 01.06.2010, 11:30
  2. MP4 Zusammenfügen
    Von CP9 im Forum Computer - Internet Forum
    Antworten: 1
    Letzter Beitrag: 25.03.2007, 19:25
  3. mysql: strings zusammenfügen
    Von baloo im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 31.07.2006, 10:15
  4. 2 assoziative arrays zusammenfügen o.ä.
    Von BendOr im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 27.01.2006, 12:36
  5. Bilder zusammenfügen?
    Von im Forum HTML & CSS Forum
    Antworten: 8
    Letzter Beitrag: 07.04.2004, 00:44

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •