Hàm count trong PHP là gì ?

30/06/2020 - lượt xem
Chia sẻ
 
Rate this post

Hàm count() trong PHP có nhiệm vụ lấy ra số phần tử trong một mảng.

Hàm này được sử dụng trên PHP4, PHP5 và PHP7.

Cú pháp

Cú pháp hàm count() trong PHP như sau:

count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] ) : int

Tham số truyền vào 

  • $array là mảng được truyền vào.
  • $mode là option tùy chọn khi đếm phần tử mảng

Với $modeCOUNT_RECURSIVEthì hàm count đếm đệ quy mảng.

 

Giá trị trả về

Hàm count() sẽ trả về số phần tử của mảng được đếm, nếu đối tượng được truyền vào không phải là một mảng, đồng thời cũng không phải một đối tượng của Countable thì sẽ trả về 1. Trường hợp ngược lại khi đối tượng là NULL sẽ trả về 0.

Ví dụ minh họa

<?php
$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));

var_dump(count(null));

var_dump(count(false));
?>

Và kết quả trả về

int(3)
int(3)

Warning: count(): Parameter must be an array or an object that implements Countable in … on line 12 // as of PHP 7.2
int(0)

Warning: count(): Parameter must be an array or an object that implements Countable in … on line 14 // as of PHP 7.2
int(1)

Ví dụ khi có tham số $mode

<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
              'veggie' => array('carrot', 'collard', 'pea'));

// recursive count
echo count($food, COUNT_RECURSIVE); // output 8

// normal count
echo count($food); // output 2

?>

Ứng dụng

Trong các trường hợp bạn cần triển khai một vòng lặp, có sử dụng count() thì bạn hãy sử dụng giải pháp sau, để tối ưu code hơn.

//Hiệu năng kém
for($i=0;$i<count($some_arr);$i++)
{
    // calculations
}
//Bằng cách sao chép count mảng, bạn sẽ có hiệu năng tốt hơn
$arr_length = count($some_arr);
for($i=0;$i<$arr_length;$i++)
{
    // calculations
}

Nếu bạn muốn kiếm tra số phần tử không phải là mảng trong một mảng đa chiều bạn có thể sử dụng cách sau

function count_elt($array, &$count=0){
  foreach($array as $v) if(is_array($v)) count_elt($v,$count); else ++$count;
  return $count;
}

Khuyến cáo

Nếu bạn sử dụng phiên bản PHP 7.2 thì bạn hãy sử dụng cách sau để kiểm tra một phần tử có phải là một mảng hay không, trước khi sử dụng hàm count() với nó.

<?php
$countFruits = is_array($countFruits) || $countFruits instanceof Countable ? count($countFruits) : 0;
?>

 

Các hàm liên quan

  • Hàm is_array() kiểm tra phần tử truyền vào có phải một mảng hay không.
  • Hàm isset() kiểm tra xem biến có tồn tại hay không.
  • Hàm empty() kiểm tra xem biến đưa vào có rỗng hay không.
  • Hàm reset() reset lại con trỏ của một mảng.
  • Hàm str_len() đếm số ký tự trong 1 chuỗi
  • Hàm is_countable() kiểm tra xem phần tử có đếm được không.

Hi vọng với bài viết này, bạn đã hiểu rõ cách sử dụng hàm count() trong PHP. Nếu thấy bài viết hay và ý nghĩa, hãy like và chia sẻ với bạn bè để mọi người cùng nhau học tập nhé.

Cảm ơn bạn đã ghé thăm codetutam.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    Liên hệ với chúng tôi

    Để lại thông tin để nhận được các bài viết khác

    Rate this post

    Xem thêm nhiều bài tin mới nhất về Kiến thức

    Xem thêm