Mảng $fruit
chứa 2 phần tử. 'Táo và cam'. Hàm đếm trong trường hợp này trả về giá trị 2. Nó cũng hoạt động như bạn mong đợi với một mảng kết hợp
Mảng $scores
chứa 3 cặp khóa-giá trị, hàm count
cho ví dụ trên trả về 3. Lưu ý rằng giá trị NULL
cũng được tính i. e Hàm count
không xác nhận giá trị thực, nó chỉ trả về số lượng giá trị
Đếm các giá trị trong một mảng
PHP cũng có hàm đếm liên quan cho mảng array_count_values
. Hàm array_count_values đếm số lần xuất hiện của mỗi chuỗi hoặc số nguyên trong một mảng
Hàm array_count_values
trả về một mảng kết hợp, các khóa là các giá trị của mảng đầu vào và các giá trị là số lượng của chúng, e. g. a
là
TRUE
if[$current != $previous[count[$previous]][0]]{
$previous[$n++][0] = $current;
$previous[$n++][1] = $counter++;
}
}else{
$previous[$n][1] = $counter++;
unset[$previous[count[$previous]-1][0]];
unset[$previous[count[$previous]-1][1]];
}
}
}
//EXPECTED VALUES
echo 'No. of NON Duplicate Items: '.count[$previous].'
';// 7
print_r[$previous];// array[ {12,1} , {21,2} , {43,6} , {66,1} , {56,1} , {78,2} , {100,1}]
?>
0 và $fruit
0 là $fruit
1Lưu ý rằng hàm array_count_values
chỉ có thể đếm các giá trị chuỗi và số nguyên. Ví dụ trên cho kết quả array_count_values[]. Chỉ có thể đếm các giá trị CHUỖI và SỐ LƯỢNG
Đếm các giá trị duy nhất
Hàm array_unique trả về các giá trị duy nhất của một mảng, i. e giá trị mảng trùng lặp được loại bỏ. Ví dụ $fruit
3 dưới đây loại bỏ giá trị 'a' trùng lặp
Hàm $fruit
3 cũng hoạt động trên các mảng kết hợp
Điều này không giống như số lượng giá trị mảng duy nhất. Các giá trị duy nhất trong mảng $fruit
5 ở trên, là. $fruit
0 và $fruit
7. Trong khi các giá trị duy nhất trong mảng $fruit
8, là. $fruit
9 và $scores
0
Để chúng tôi tìm số lượng giá trị duy nhất trong một mảng, chúng tôi có thể sử dụng kết hợp count
, array_filter và array_count_values
. Hãy sử dụng mảng $fruit
5 làm ví dụ của chúng tôi, trước tiên chúng tôi sử dụng array_count_values
để trả về số lượng của từng giá trị trong mảng
Chúng ta có thể thấy từ đầu ra ở trên rằng các chữ cái duy nhất là $fruit
0 và $fruit
7. Bây giờ chúng ta có thể sử dụng $scores
7 để giữ các giá trị bằng 1
Và cuối cùng là count
những giá trị đó
Chúng ta có thể dễ dàng tìm thấy số lượng các giá trị mảng trùng lặp bằng cách sử dụng kết hợp count
và $fruit
3. Chúng ta có thể đếm số lượng giá trị mảng ban đầu và trừ đi số lượng giá trị mảng duy nhất, đây là một vài ví dụ
Đếm một giá trị cụ thể
Để đếm một giá trị mảng cụ thể, chúng ta có thể sử dụng count
và $scores
7. Chúng tôi sẽ sử dụng $scores
7 với một chức năng để giữ giá trị mà chúng tôi muốn đếm và sau đó sử dụng count
để trả về số lượng giá trị
$scores
7 gần tương đương với đếm nếu, hàm của chúng tôi là nếu xác định giá trị nào được trả về và sau đó được đếmSố lượng mảng so với sizeof
Hàm sizeof là bí danh của hàm đếm. Hàm sizeof trong PHP không trả về dung lượng bộ nhớ được phân bổ bởi một biến, như với các ngôn ngữ khác
Bạn chỉ cần sử dụng hàm PHP $scores
7 hoặc $scores
8 để lấy số lượng phần tử hoặc giá trị trong một mảng. Hàm $scores
7 và $scores
8 trả về 0 cho một biến đã được khởi tạo với một mảng trống, nhưng nó cũng có thể trả về 0 cho một biến không được đặt
Bạn có thể sử dụng thêm hàm count
1 để kiểm tra xem một biến đã được đặt hay chưa
";
echo sizeof[$days];
?>
Câu hỏi thường gặp liên quan
Dưới đây là một số câu hỏi thường gặp khác liên quan đến chủ đề này
❮ Tham chiếu mảng PHP
Thí dụ
Đếm tất cả các giá trị của một mảng
$a=array["A","Cat","Dog","A","Dog"];
print_r[array_count_values[$a]];
Định nghĩa và cách sử dụng
Hàm array_count_values[] đếm tất cả các giá trị của một mảng
cú pháp
array_count_values[mảng]
Giá trị tham số
Tham sốMảng mô tảBắt buộc. Chỉ định mảng để đếm giá trị củachi tiết kỹ thuật
Giá trị trả về. Trả về một mảng kết hợp, trong đó các khóa là các giá trị của mảng ban đầu và các giá trị là số lần xuất hiện Phiên bản PHP. 4+❮ Tham chiếu mảng PHPTôi muốn đếm số lần xuất hiện của từng mục trùng lặp trong một mảng và kết thúc bằng một mảng chỉ gồm các mục duy nhất/không trùng lặp với các lần xuất hiện tương ứng của chúng
Đây là mã của tôi;
TRUE
if[$current != $previous[count[$previous]][0]]{
$previous[$n++][0] = $current;
$previous[$n++][1] = $counter++;
}
}else{
$previous[$n][1] = $counter++;
unset[$previous[count[$previous]-1][0]];
unset[$previous[count[$previous]-1][1]];
}
}
}
//EXPECTED VALUES
echo 'No. of NON Duplicate Items: '.count[$previous].'
';// 7
print_r[$previous];// array[ {12,1} , {21,2} , {43,6} , {66,1} , {56,1} , {78,2} , {100,1}]
?>