Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: [php] unire due array

  1. #1

    [php] unire due array

    Salve a tutti
    ho degli array

    arr1 = array('a','b','c');

    arr2 = array('e','f','g');


    devo ottenere

    arr3 = array('a','b','c','e','f','g').

    Non posso usare array_merge perché dato che gli elementi han indici comuni me li sovrascriverebbe invece di accodarli!

    Mi sapete aiutare? C'è qualche funzione adatta senza doversela fare a mano?
    Grazie a chi mi risponderà!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  2. #2
    Edit: no aspetta, gli array hanno indici numerici o stringhe?

  3. #3
    Indici numerici! Se fossero stringhe sarebbe tutto risolto! :P
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  4. #4
    array_merge() non sovrascrive:
    If, however, the arrays contain numeric keys, the later value will not overwrite the original value, but will be appended.

  5. #5
    Ma in php 5? Io ho provato ad usarla e facendo un print_r mi sovrascrive tutto!!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  6. #6
    Codice PHP:
    $arr1 = array('a','b','c');
    $arr2 = array('e','f','g');

    print_r(array_merge($arr1$arr2));

    //Output:
    //
    //Array
    //(
    //    [0] => a
    //    [1] => b
    //    [2] => c
    //    [3] => e
    //    [4] => f
    //    [5] => g
    //)
    //
    // PHP 5.3.2-2 with Suhosin-Patch (cli) (built: Jul 18 2010 21:42:32) 

  7. #7
    ok problema risolto. In pratica facevo così:


    $arr1=array();

    $arr2=array('a','b','c');
    $arr1=array_merge($arr1,$arr2);

    $arr2=array('d','e','f');
    $arr1=array_merge($arr1,$arr2);

    e così via varie volte. In questo modo (anche se non capisco bene perché) non mi accoda gli elementi. Se invece uso delle variabili diverse invece che sempre $arr2 allora funziona!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  8. #8
    Originariamente inviato da Nunkij
    ok problema risolto. In pratica facevo così:


    $arr1=array();

    $arr2=array('a','b','c');
    $arr1=array_merge($arr1,$arr2);

    $arr2=array('d','e','f');
    $arr1=array_merge($arr1,$arr2);

    e così via varie volte. In questo modo (anche se non capisco bene perché) non mi accoda gli elementi. Se invece uso delle variabili diverse invece che sempre $arr2 allora funziona!
    Questo codice, per quanto inutilmente complicato, funziona perfettamente.

  9. #9
    Bho a me non andava l'ho riprovato sia con il tuo esempio che col mio! In ogni caso ora lo script va bene! Ti ringrazio
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  10. #10
    ma in php non esisteva

    Codice PHP:

    $arr1 
    = array(....);
    $arr2 = array(....);

    print_r($arr1 $arr2); 
    ?

    per approfondimenti: http://hexmen.com/blog/2008/11/conca...arrays-in-php/


    EDIT: si esiste ma non va bene nel caso, cmq il manuale docet

    http://it.php.net/language.operators.array

    con tanto di esempi
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.