Menu
Coddy logo textTech

Modificare gli elementi di un array 2D

Fa parte della sezione Logica e flusso del percorso PHP di Coddy. Lezione 29 di 68.

Una volta che sai accedere agli elementi di un array 2D, il passo logico successivo è imparare a modificarne i valori. Per modificare gli elementi di un array 2D si usa la stessa sintassi a doppio indice usata per accedervi, ma con un operatore di assegnazione per impostare un nuovo valore.

Ecco come modificare un elemento specifico in un array bidimensionale:

<?php
$gameBoard = [
    ["", "", ""],
    ["", "", ""],
    ["", "", ""]
];

// Imposta la cella centrale su 'X'
$gameBoard[1][1] = "X";

// Imposta la cella nell'angolo in alto a sinistra su 'O'
$gameBoard[0][0] = "O";
?>

La sintassi $gameBoard[1][1] = "X" indica la riga 1, colonna 1 (il centro di una griglia 3x3) e assegna il valore "X" a quella posizione. Modifica direttamente l'array originale, sostituendo qualsiasi valore fosse presente prima.

Questa tecnica di modifica è essenziale per aggiornare gli stati del gioco, modificare i dati nelle tabelle o in qualsiasi scenario in cui sia necessario alterare posizioni specifiche all'interno della struttura dati simile a una griglia. La possibilità di individuare e aggiornare posizioni esatte rende gli array 2D perfetti per rappresentare informazioni dinamiche e modificabili organizzate in righe e colonne.

challenge icon

Sfida

Facile

Riceverai quattro input: un array 2D che rappresenta una mappa dei posti in formato JSON, un indice di riga, un indice di colonna e il nome di un nuovo passeggero. Leggi tutti e quattro gli input, converti la stringa JSON in un array 2D, modifica l'elemento nella riga e nella colonna specificate assegnandogli il nome del nuovo passeggero e stampa l'array 2D aggiornato usando print_r().

L'array 2D rappresenta una mappa dei posti in cui ogni elemento contiene il nome di un passeggero o una stringa vuota per i posti liberi.

Formato dell'input:

  • Prima riga: un array JSON che rappresenta la mappa dei posti (esempio: [["Alice","Bob",""],["","Charlie","Diana"],["","",""]])
  • Seconda riga: indice di riga (intero)
  • Terza riga: indice di colonna (intero)
  • Quarta riga: nome del nuovo passeggero (stringa)

Output previsto: l'array 2D modificato, visualizzato usando print_r()

Provalo tu

<?php
// Leggi gli input
$json_input = trim(fgets(STDIN));
$row_index = intval(fgets(STDIN));
$col_index = intval(fgets(STDIN));
$new_passenger = trim(fgets(STDIN));

// Converti JSON in un array 2D
$seating_chart = (array)json_decode($json_input, true);

// TODO: Scrivi il tuo codice qui sotto per modificare la disposizione dei posti


// Stampa l'array modificato
print_r($seating_chart);
?>
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore PHP online