Unire array indicizzati
Fa parte della sezione Logica e flusso del percorso PHP di Coddy. Lezione 14 di 68.
Quando devi combinare più array indicizzati in un unico array più grande, la funzione array_merge() di PHP è la soluzione perfetta. Questa funzione accetta due o più array come argomenti e crea un nuovo array contenente tutti gli elementi degli array di input.
Ecco la sintassi di base:
<?php
$firstList = ["Alice", "Bob"];
$secondList = ["Charlie", "Diana"];
$combined = array_merge($firstList, $secondList);
print_r($combined); // Stampa: Array ( [0] => Alice [1] => Bob [2] => Charlie [3] => Diana )
?>Nota come array_merge() crea un array completamente nuovo invece di modificare gli array originali. Gli elementi del primo array compaiono per primi, seguiti dagli elementi del secondo array e così via. Il nuovo array viene reindicizzato automaticamente a partire da 0.
Puoi unire più di due array contemporaneamente:
<?php
$morning = ["John", "Sarah"];
$afternoon = ["Mike", "Lisa"];
$evening = ["Tom"];
$allGuests = array_merge($morning, $afternoon, $evening);
print_r($allGuests); // Stampa: Array ( [0] => John [1] => Sarah [2] => Mike [3] => Lisa [4] => Tom )
?>Questa funzione è particolarmente utile quando raccogli dati da fonti diverse e devi combinarli in un unico elenco, ad esempio unendo le liste degli invitati di diversi eventi o combinando i cataloghi di prodotti di più categorie.
Sfida
FacileRiceverai tre input: due array in formato JSON e un terzo array, anch'esso in formato JSON. Leggi tutti e tre gli input, converti ogni stringa JSON in un array, usa array_merge() per combinare tutti e tre gli array in uno solo e stampa l'array unito usando print_r().
Formato di input: Tre righe: ogni riga contiene un array JSON (esempio: ["apple","banana"])
Output previsto: L'array unito contenente tutti gli elementi dei tre array nell'ordine, visualizzato usando print_r()
Provalo tu
<?php
// Leggi i tre input JSON
$input1 = trim(fgets(STDIN));
$input2 = trim(fgets(STDIN));
$input3 = trim(fgets(STDIN));
// Converti le stringhe JSON in array
$array1 = (array)json_decode($input1, true);
$array2 = (array)json_decode($input2, true);
$array3 = (array)json_decode($input3, true);
// TODO: Scrivi il tuo codice qui sotto per unire gli array e stampare il risultato
?>Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Logica e flusso
1Funzioni avanzate
Funzioni anonimeClosure e 'use'Funzioni frecciaFunzioni callbackUso di 'call_user_func'Funzioni variabiliPassaggio per riferimentoFunzioni ricorsiveRiepilogo: carrellata di funzioni4Array multidimensionali
Creare un array 2DAccedere agli elementi di un array 2DModificare gli elementi di un array 2DIterare con cicli annidatiArray associativi 2DRipasso: esercizio con una griglia semplice2Manipolazioni avanzate degli array
Aggiungere con 'array_push'Rimuovere con 'array_pop'Aggiungere con 'array_unshift'Rimuovere con 'array_shift'Unire array indicizzatiUnire array associativiEstrarre con 'array_slice'Valori con 'in_array'Chiavi con 'array_search'Riepilogo: esercizio playlist3Ordinare gli array
Ordina gli array indicizzati in ordine crescenteOrdina gli array indicizzati in ordine decrescenteOrdina gli array associativi per valoreOrdina gli array associativi per chiaveOrdinamento naturaleOrdinamento personalizzato con 'usort'Ripasso: ordinamento della classificaEsercitati da solo: Compilatore PHP online