Последствия копипаста или считаем в PHP количество элементов в массиве

считаем в PHP количество элементов в массиве

От автора: семьдесят пять, шесть, семь…. Извините, я сейчас уже заканчиваю! Семьдесят…. Сколько? Тьфу, опять сбился! В общем, создал массив, «накопипастил» в него элементов, а теперь не могут понять, сколько их. А чего я мучаюсь? Ведь с помощью PHP количество элементов в массиве подсчитать очень даже легко.

А индекс зачем?

Проще всего узнать длину обычного массива. Для этого нужно всего лишь вывести значение ключа последнего элемента. Хотя для этого тоже понадобится специальная функция (об этом позже). Хуже всего дело обстоит с ассоциативными массивами, в которых значение ключа может быть не только целочисленным, но и любым другим типом данных, поддерживаемым PHP.

Решение этой проблемы кажется простым лишь на первый взгляд. Но если длина массива «зашкаливает» за сотни или даже тысячи, тогда у любого пойдет кругом голова. И метод «раз ромашка, а я четвертую нашел» явно вам не поможет. Как не помог и мне :) .

Чтобы доказать выше сказанное, создадим самый непредсказуемый массив в мире. Имеется в виду, что длина, ключ и значение каждого из элементов такой структуры задается случайным числом из определенного диапазона. Для этого мы использовали функцию rand():

<?php
$random = array();

for ($a=1; $a<rand(10,30); $a++)
{
$random[rand(1,90)]=rand(5,100);

}
print_r($random);
?>

Узнаем ширину массива

Легче всего узнать количество элементов в массиве PHP можно с помощью функции count(). Причем она будет возвращать его длину в любом случае. Даже в столь тяжелом, как наш :) . Пример использования данной функции:

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее
<?php
$random = array();

for ($a=1; $a<rand(10,30); $a++)
{
echo $random[rand(1,90)]=rand(5,100)."<br />";

}
echo "Длина массива ".count($random);
?>

считаем в PHP количество элементов в массиве

Еще один метод, как подсчитать количество элементов в массиве PHP, заключается в применении функции var_dump(). Но с ее помощью можно узнать «численность» элементов визуально. Данная функция выводит всю информацию о передаваемой ей в качестве параметра переменной: тип, длину (если это array) и значение:

<?php
$random = array();

for ($a=1; $a<rand(10,30); $a++)
{
$random[rand(1,90)]=rand(5,100);

}
var_dump($random);
?>

считаем в PHP количество элементов в массиве

Другие варианты

Существуют и другие варианты, чтобы посчитать количество элементов в массивах PHP. Например, метод «засланного казачка». Для этого мы инициализируем внутри цикла for новую переменную. При каждой итерации цикла к ее значению будет прибавляться 1(с помощью инкремента). Затем под телом цикла мы выводим значение «засланного казачка» и узнаем длину массива.

<?php
$random = array();
for ($a=1; $a<rand(10,30); $a++)
{
echo $random[rand(1,90)]=rand(5,100)."<br />";
$c++;
}
echo "Длина массива ".$c;
?>

считаем в PHP количество элементов в массиве

Чтобы узнать в PHP количество уникальных элементов массива, можно мудрить очень долго. Мой вариант заключается в использовании функции array_unique(), которая очищает входящий массив от повторяющихся значений. Затем просто возвращаем длину уже обработанного массива с помощью функции count() (число уникальных элементов):

<?php
$arr1 = array("a","3","f","a","c","s","3","r","b");
echo "Входной массив"."<br/>";
var_dump($arr1);
$arr2 = array_unique($arr1);
echo "<br/>";
echo "Массив с уникальными значениями элементов"."<br/>";
var_dump($arr2);
echo "<br/>";
echo "Во входном массиве было ".count($arr2)." уникальных элементов"."<br/>";

считаем в PHP количество элементов в массиве

Вот так легко подсчитывается количество элементов в массиве PHP. А я мучился! Но благодаря этому материалу я воскресил в своей памяти нужные мне знания и посвятил в эту «магическую науку» вас. Хотя на деле магия оказалась обычной ловкостью ума и PHP :) .

Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Курс по программированию на языке PHP

Изучите PHP с нуля до результата!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree