Посчитать количество массив php

count

Подсчитывает количество элементов массива или чего-то в объекте.

Для объектов, если у вас включена поддержка SPL, вы можете перехватить count() , реализуя интерфейс Countable. Этот интерфейс имеет ровно один метод, Countable::count() , который возвращает значение функции count() .

Смотрите раздел Массивы в этом руководстве для более детального представления о реализации и использовании массивов в PHP.

Список параметров

Массив или объект, реализующий Countable.

Если необязательный параметр mode установлен в COUNT_RECURSIVE (или 1), count() будет рекурсивно подсчитывать количество элементов массива. Это особенно полезно для подсчёта всех элементов многомерных массивов.

count() умеет определять рекурсию для избежания бесконечного цикла, но при каждом обнаружении выводит ошибку уровня E_WARNING (в случае, если массив содержит себя более одного раза) и возвращает большее количество, чем могло бы ожидаться.

Возвращаемые значения

Возвращает количество элементов в value . Если параметр не является массивом или объектом, реализующим интерфейс Countable, будет возвращена 1 . За одним исключением: если value — null , то будет возвращён 0 .

Примеры

Пример #1 Пример использования count()

$a [ 0 ] = 1 ;
$a [ 1 ] = 3 ;
$a [ 2 ] = 5 ;
var_dump ( count ( $a ));

$b [ 0 ] = 7 ;
$b [ 5 ] = 9 ;
$b [ 10 ] = 11 ;
var_dump ( count ( $b ));

Результат выполнения данного примера:

int(3) int(3) Warning: count(): Parameter must be an array or an object that implements Countable in … on line 12 // Начиная с PHP 7.2 int(0) Warning: count(): Parameter must be an array or an object that implements Countable in … on line 14 // Начиная с PHP 7.2 int(1)

Пример #2 Пример рекурсивного использования count()

$food = array( ‘fruits’ => array( ‘orange’ , ‘banana’ , ‘apple’ ),
‘veggie’ => array( ‘carrot’ , ‘collard’ , ‘pea’ ));

// рекурсивный подсчет
echo count ( $food , COUNT_RECURSIVE ); // выводит 8

// обычный подсчет
echo count ( $food ); // выводит 2

Список изменений

Версия Описание
7.2.0 count() теперь будет выдавать предупреждение о некорректных исчисляемых типов, переданных в параметр value .

Смотрите также

  • is_array() — Определяет, является ли переменная массивом
  • isset() — Определяет, была ли установлена переменная значением, отличным от null
  • empty() — Проверяет, пуста ли переменная
  • strlen() — Возвращает длину строки
  • is_countable() — Проверить, что содержимое переменной является счетным значением

Источник

PHP Array Length Tutorial – How to Get an Array Size

PHP Array Length Tutorial – How to Get an Array Size

Arrays are a powerful data type in PHP. And knowing how to quickly determine the size of an array is a useful skill.

In this article I’ll give you a quick overview of how arrays work, and then I’ll dive into how to get the size of PHP arrays.

If you already know what arrays are, you can jump straight ahead to the How to get an Array size? section.

What is an Array in PHP?

Before we dive into getting an array size, we need to make sure we understand what an array is. An array in PHP is a variable type that allows you to store more than one piece of data.

For example, if you were storing a simple string, you would use a PHP string type:

$heading = 'PHP Array Length Tutorial';

However, if you wanted to store a few more pieces of separate data, you might consider using a couple of string variables.

$heading = 'PHP Array Length Tutorial'; $subheading = 'How to get an array size'; $author = 'Jonathan Bossenger'

That’s all well and good, but what if you need to store more data, and quickly recall any of those items elsewhere in your code? That’s where an array comes in handy. You can still store the individual pieces of data but using a single variable.

$post_data = array( 'PHP Array Length Tutorial', 'How to get an array size', 'Jonathan Bossenger' );

Each item in that array can be referenced by its numeric key. So instead of needing to recall the single variables, you could reference a single array item by its numeric key.

For even more control, arrays also allow you to define your own array keys, using a string.

$post_data = array( 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => 'Jonathan Bossenger' );

This allows you to also reference the array item by its string key.

You can also define arrays using the new short array notation, which is similar to JavaScript:

$post_data = [ 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => 'Jonathan Bossenger' ];

Arrays can also be nested, forming more complex array variables:

$post_data = [ 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => [ 'name' => 'Jonathan Bossenger', 'twitter' => 'jon_bossenger', ] ]; 

And, you can recall a specific array value using its nested key:

However, if you find yourself regularly doing this, you might want to consider using objects rather than arrays.

Arrays are useful if you need to quickly gather and then use different pieces of related data in a function, or pass that data to another function.

By putting these pieces of data into an array, you have fewer variables defined, and it can make your code easier to read and understand later on. It’s also a lot easier to pass a single array variable to another function than it is to pass multiple strings.

$post_data = [ 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => [ 'name' => 'Jonathan Bossenger', 'twitter' => 'jon_bossenger', ] ]; $filtered_post_data = filter_post_data($post_data)

How to Get the Size of an Array in PHP

Usually when we talk about the size of an array, we’re talking about how many elements exist in that array. There are two common ways to get the size of an array.

The most popular way is to use the PHP count() function. As the function name says, count() will return a count of the elements of an array. But how we use the count() function depends on the array structure.

Let’s look at the two example arrays we defined earlier.

$post_data = array( 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => 'Jonathan Bossenger' ); echo count($post_data);

In this example, count($post_data) will result in 3. This is because there are 3 elements in that array: ‘heading’, ‘subheading’, and ‘author’. But what about our second, nested array example?

$post_data = [ 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => [ 'name' => 'Jonathan Bossenger', 'twitter' => 'jon_bossenger', ] ]; echo count($post_data);

Believe it or not, in this example, count($post_data) will also return 3. This is because by default the count() function only counts the top level array elements.

If you take a look at the function definition, you will see that it accepts two arguments – the array to be counted, and a mode integer. The default value for that mode is the predefined constant COUNT_NORMAL , which tells the function to only count the top level array elements.

If we pass the predefined constant COUNT_RECURSIVE instead, it will run through all levels of nesting, and count those instead.

$post_data = [ 'heading' => 'PHP Array Length Tutorial', 'subheading' => 'How to get an array size', 'author' => [ 'name' => 'Jonathan Bossenger', 'twitter' => 'jon_bossenger', ] ]; echo count($post_data, COUNT_RECURSIVE);

Now, the result of count($post_data, COUNT_RECURSIVE) will be, as expected, 5.

«But wait!», I hear you cry. «you mentioned there was another way?».

Well yes, the other function you can use is sizeof(). However, sizeof() is just an alias of count() , and many folks assume (rightly so) that sizeof() would return the memory usage of an array.

Therefore it’s better to stick with count() , which is a much more suitable name for what you are doing – counting elements in an array.

Thanks for reading! I hope you now have a better understanding of how to find the size of an array in PHP.

Источник

PHP count() Function

The count() function returns the number of elements in an array.

Syntax

Parameter Values

  • 0 — Default. Does not count all elements of multidimensional arrays
  • 1 — Counts the array recursively (counts all the elements of multidimensional arrays)

Technical Details

Return Value: Returns the number of elements in the array
PHP Version: 4+
PHP Changelog: The mode parameter was added in PHP 4.2

More Examples

Example

Count the array recursively:

echo «Normal count: » . count($cars).»
«;
echo «Recursive count: » . count($cars,1);
?>

Unlock Full Access 50% off

COLOR PICKER

colorpicker

Join our Bootcamp!

Report Error

If you want to report an error, or if you want to make a suggestion, do not hesitate to send us an e-mail:

Thank You For Helping Us!

Your message has been sent to W3Schools.

Top Tutorials
Top References
Top Examples
Get Certified

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Источник

Посчитать количество массив php

Функция для подсчета элементов массива в php это — count

Описание из учебника php что такое функция

Если var не является массивом или объектом, реализующим интерфейс Countable, будет возвращена 1. За одним исключением: если var — NULL, то будет возвращён 0.

Итого, переводя с выше приведенного не человеческого смайлы на русский, внутрь функции помещаем массив, после срабатывания функции вернет числовое значение количество элементов внутри массива:

Для всего выше перечисленного нам потребуется реальный пример, чтобы на нем потренироваться!

Пример подсчета элементов простого массива -> count

Для того, чтобы продемонстрировать работу функции count и как сработает подсчет элементов массива нам потребуется тренировочный простой массив? он есть у нас $example_simple_array :

Выведем его прямо здесь через print_r? как видим все происходит в живую.

Теперь во внутрь функции count поместим наш массив $example_simple_array и выведем через echo

Результат вывод подсчета количества элементов массива на экран:

Обращаю ваше внимание на то , что нумерация элементов массива начинается с нуля и последняя ячейка по счету получается пятая, но на самом деле(если по умолчанию первый элемент счета -> первый) она 6!
Это всегда нужно держать в голове

Подсчет количества элементов в ассоциативном массиве

Как и раньше у нас есть подопытный ассоциативный массив $array выведем его также через print_r:

Источник

Читайте также:  Java util array to string
Оцените статью