Новини високих технологій
» » Як визначити кількість елементів у масиві PHP?

Як визначити кількість елементів у масиві PHP?

10-01-2018, 16:11
1 853
Кількість елементів у масиві PHP пропонується визначати функцію count(). У більшості випадків це простий та практичний спосіб. Звичайний сайт не вимагає особливої логіки, не містить складних систем об'єктів, тому використання функції count() буде достатньо.
У випадках, коли масиви виступають в якості колекцій об'єктів або являють собою семантично взаємозалежні структури даних, обчислення кількості визначається змістом цих даних.

Синтаксис і використання функції count()

Результат функції - кількість елементів у масиві, які передані в якості параметра. Нижче представлений приклад PHP: підрахунок кількості елементів в масиві.


Спочатку був створений масив з 13 випадкових елементів. Кожен елемент - рядок символів різного змісту і довжини. Потім було вилучено два елемента і доданий один. За логікою 13 - 2 + 1 = 12 але функція count() вважає інакше. Нижче наведено код виведення цього результату.
Оскільки був доданий масив, то число елементів повинно було збільшитися кількість елементів цього масиву. Зрозуміло, що мета функції count() - порахувати кількість елементів у масиві. PHP менше всього цікавить, що елементами масиву можуть бути теж масиви. Але в прикладному відношенні далеко не завжди елементи масиву включають в себе різнорідні інші масиви.

Особливості структурування даних

Якщо мова йде про обробку даних з постачання фруктів в магазин, то елементом може бути ананас і різні сорти яблук або груш. Заводити на всі три позиції асортименту три різні структури даних по безлічі причин.


Один масив буде завжди найкращим рішенням, але в ньому може бути як мала рядок - «ананас», так і сукупність рядків - «сорт яблук» або «сорт груш». Рядків може бути безліч, все залежить від: дати поставки; сорти; кількості; ціни та ін.
Як визначити кількість елементів у масиві PHP?
Але сенс рядка всього масиву і рядка подмассива завжди буде один. У такому поданні даних кількість елементів у масиві PHP не визначити за своєю логікою. Тут масив повинен мати власний функціонал для визначення кількості. Функції count() не властива рекурсія, та її використання для визначення точної кількості елементів - не гарантія точного результату.

Об'єкти та масиви

Масиви - безсумнівна якість і ефективність для представлення даних. Особливо ефективно використання масивів як колекцій об'єктів. Класичний цикл перебору елементів масиву або робота в стилі стека: тільки з першим елементом або тільки з останнім (після використання елемент видаляється, але стає доступним наступний або попередній). Не важливо, як працювати з колекцією об'єктів, але завжди кожному елементу такої колекції можна призначити власну функцію визначення кількості. Тоді, не використовуючи функцію count(), кількість елементів у масиві PHP можна визначити через послідовний виклик методу кожного елемента в масиві. Формально така логіка має під собою підставу: є асортимент фруктів, що поставляються в магазин, але як бути, якщо асортимент збільшиться, і до ананасам, яблукам і грушам додадуться сливи? Як бути, якщо крім фруктів магазин почне продавати овочі?
Уявімо асортимент як об'єкт, в який входять: фрукти; овочі; можливість додавання будь-якого товару. Можна отримати три рівня ієрархії об'єктів, і тоді можна буде визначити не тільки кількість елементів у масиві. PHP дозволить порахувати кількість товару, його вартість, визначити час продажу за умов придатності та ін. Використання даних у вигляді об'єктів дозволяє надати їм потрібну якість, від якого завжди легко отримати точну кількість.
Цікаво по темі
JavaScript, масиви: опис
JavaScript, масиви: опис
jаvascript – сучасна мова програмування, він унікальний у частині синтаксису і семантики. Має специфіку...
Foreach PHP: останній елемент
Foreach PHP: останній елемент
В масивах на PHP є дві цікаві можливості: рух foreach і останній елемент. Тобто в прямому і зворотному ...
Ефективне програмування на PHP: масиви в рядок
Ефективне програмування на PHP: масиви в рядок
PHP, як сучасна мова програмування, надає можливість обробляти дані, тип яких можна визначити в момент ...
Javascript Array для збереження необмеженої кількості змінних
Javascript Array для збереження необмеженої кількості змінних
Логічно масив займає проміжне положення між змінними і об'єктами. Практично не слід надавати особливого значення словам. У програмі є змінні і код.
Java Array. Масиви в Java. Java для початківців
Java Array. Масиви в Java. Java для початківців
Для роботи з великою кількістю значень в Java, як у більшості сучасних високорівневих мов програмування, є такий потужний інструмент, як масиви.