• Теория
  • Теория

Ассоциативный массив в PHP

А вот и новая задача. В каталоге должна появиться фильтрация товаров по категориям. При клике на любую из них, на странице должны появляться товары только выбранной категории.

Начнём работать над задачей постепенно. Сначала научимся добавлять один товар на страницу.

Разработчики подготовили для нас массив $item. В нём хранится разная информация о товаре — название, цена, фотография и категория. Только вместо индекса у каждого элемента есть своё название, или ключ.

Массив, у которого вместо индексов ключи, называется ассоциативным. Каждый ключ хранит какое-то значение, как переменная. Имя ключа пишется в одинарных кавычках, а чтобы задать ключу значение, используются символы =>.

$spiderman = [
  'name' => 'Питер',    // Ключ 'name', значение 'Питер'
  'surname' => 'Паркер' // Ключ 'surname', значение 'Паркер'
];

Оба элемента массива из примера относятся к Человеку-пауку, поэтому удобно хранить их не по отдельности в переменных, а вместе, в одном массиве.

Чтобы получить значение из такого массива, нужно написать название массива, а затем в квадратных скобках указать ключ.

keks_log($spiderman['name']);    // Выведет: "Питер"
keks_log($spiderman['surname']); // Выведет: "Паркер"

В шаблоне components/product_list.php добавим в карточку товара название, цену и фотографию товара. Для этого будем обращаться к ключам массива $item.

Больше про массивы и примеры их использования на сайтах можно узнать в этой статье из блога HTML Academy.

А ещё об ассоциативных массивах можно почитать в учебнике по PHP.

Хотите досконально разбираться в разметке, знать о доступности, строить сетки на флексбоксах? Записывайтесь на профессиональный курс по вёрстке первого уровня, проходящий c 27 мая по 29 июля 2024. Цена 22 900 ₽

Минимальный вид табов
  • index.html
HTML
HTML

Вы перешли на другую страницу

Кликните внутри мини-браузера, чтобы поставить фокус в это окно.

100%
Бабушка Кекс

Притормози, дружище

Проходить вызовы части «Массивы и циклы в PHP» тренажёра «Знакомство с PHP» можно после регистрации и оформления подписки.