Menu
Coddy logo textTech

Modyfikowanie elementów za pomocą indeksu

Część sekcji Podstawy ścieżki PHP w Coddy. Lekcja 37 z 71.

Wiesz już, jak uzyskiwać dostęp do elementów tablicy za pomocą ich indeksu. Teraz zobaczmy, jak zmieniać te elementy. Modyfikowanie elementu tablicy wymaga użycia tej samej składni z nawiasami kwadratowymi, ale z przypisaniem.

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

$fruits[1] = "Blueberry";

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

Tutaj zastąpiliśmy „Banana” na indeksie 1 wartością „Blueberry”. Oryginalna wartość zniknęła: tablice nie przechowują historii zmian.

Możesz zmodyfikować dowolny element, jeśli znasz jego indeks:

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

$scores[0] = 95;  // Zaktualizuj pierwszy wynik
$scores[2] = 82;  // Zaktualizuj ostatni wynik

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

Jest to przydatne, gdy musisz zaktualizować dane na liście, na przykład poprawić literówkę, zaktualizować cenę lub zmienić status użytkownika. Indeks informuje PHP dokładnie, który element zastąpić, pozostawiając wszystkie pozostałe elementy bez zmian.

challenge icon

Wyzwanie

Łatwy

Wczytaj wiersz danych wejściowych zawierający wartości oddzielone przecinkami, reprezentujące listę kolorów (np. Red,Green,Blue,Yellow).

Następnie wczytaj jeszcze trzy wartości:

  • Liczbę całkowitą index1 reprezentującą indeks pierwszego elementu do zmodyfikowania
  • Ciąg znaków newValue1 reprezentujący nową wartość dla tego indeksu
  • Liczbę całkowitą index2 reprezentującą indeks drugiego elementu do zmodyfikowania

Utwórz tablicę z danych wejściowych oddzielonych przecinkami, a następnie:

  1. Zmień element o indeksie index1 na newValue1
  2. Zmień element o indeksie index2 na Purple

Wypisz zmodyfikowane elementy tablicy w osobnych wierszach, w kolejności od indeksu 0 do ostatniego indeksu.

Przykład:

Jeśli dane wejściowe to Red,Green,Blue,Yellow, 0, Orange i 2, wynikiem powinno być:

Orange
Green
Purple
Yellow

Jeśli dane wejściowe to Apple,Banana,Cherry,Mango,Kiwi, 1, Grape i 4, wynikiem powinno być:

Apple
Grape
Cherry
Mango
Purple

Spróbuj swoich sił

<?php
// Wczytaj kolory oddzielone przecinkami
$colorsInput = trim(fgets(STDIN));
$colors = explode(',', $colorsInput);

// Wczytaj dane wejściowe do modyfikacji
$index1 = intval(trim(fgets(STDIN)));
$newValue1 = trim(fgets(STDIN));
$index2 = intval(trim(fgets(STDIN)));

// TODO: Napisz tutaj swój kod
// 1. Zmień element o indeksie index1 na newValue1
// 2. Zmień element o indeksie index2 na dokładny tekst z instrukcji

// Wypisz każdy element w osobnym wierszu
foreach ($colors as $color) {
    echo $color . "\n";
}
?>
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator PHP online