Menu
Coddy logo textTech

Modificare gli elementi tramite indice

Fa parte della sezione Fondamenti del percorso PHP di Coddy. Lezione 37 di 71.

Hai imparato ad accedere agli elementi di un array tramite il loro indice. Ora vediamo come modificare questi elementi. Per modificare un elemento di un array si usa la stessa sintassi con le parentesi quadre, ma con un'assegnazione.

<?php
$fruits = ["Apple", "Banana", "Cherry"];

$fruits[1] = "Blueberry";

echo $fruits[1]; // Blueberry
?>

Qui abbiamo sostituito "Banana" all'indice 1 con "Blueberry". Il valore originale è scomparso: gli array non conservano una cronologia delle modifiche.

Puoi modificare qualsiasi elemento, purché tu ne conosca l'indice:

<?php
$scores = [85, 90, 78];

$scores[0] = 95;  // Aggiorna il primo punteggio
$scores[2] = 82;  // Aggiorna l'ultimo punteggio

echo $scores[0]; // 95
echo $scores[2]; // 82
?>

È utile quando devi aggiornare i dati nella tua lista, ad esempio correggere un refuso, aggiornare un prezzo o modificare lo stato di un utente. L'indice indica a PHP esattamente quale elemento sostituire, lasciando invariati tutti gli altri elementi.

challenge icon

Sfida

Facile

Leggi una riga di input contenente valori separati da virgole che rappresentano un elenco di colori (ad es., Red,Green,Blue,Yellow).

Leggi poi altri tre input:

  • Un numero intero index1 che rappresenta il primo indice da modificare
  • Una stringa newValue1 che rappresenta il nuovo valore per quell’indice
  • Un numero intero index2 che rappresenta il secondo indice da modificare

Crea un array a partire dall’input separato da virgole, quindi:

  1. Modifica l’elemento all’indice index1 impostandolo a newValue1
  2. Modifica l’elemento all’indice index2 impostandolo a Purple

Stampa gli elementi dell’array modificato su righe separate, nell’ordine dall’indice 0 fino all’ultimo indice.

Esempio:

Se gli input sono Red,Green,Blue,Yellow, 0, Orange e 2, l’output dovrebbe essere:

Orange
Green
Purple
Yellow

Se gli input sono Apple,Banana,Cherry,Mango,Kiwi, 1, Grape e 4, l’output dovrebbe essere:

Apple
Grape
Cherry
Mango
Purple

Provalo tu

<?php
// Leggi i colori separati da virgole
$colorsInput = trim(fgets(STDIN));
$colors = explode(',', $colorsInput);

// Leggi i valori di input per le modifiche
$index1 = intval(trim(fgets(STDIN)));
$newValue1 = trim(fgets(STDIN));
$index2 = intval(trim(fgets(STDIN)));

// TODO: Scrivi qui il tuo codice
// 1. Modifica l'elemento all'indice index1 impostandolo su newValue1
// 2. Modifica l'elemento all'indice index2 impostandolo sul testo esatto delle istruzioni

// Stampa ogni elemento su una riga separata
foreach ($colors as $color) {
    echo $color . "\n";
}
?>
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 Fondamenti

Esercitati da solo: Compilatore PHP online