1. Chức năng của hàm in_array()
Hàm in_array() trong PHP có chức năng kiểm tra một giá trị nào đó có tồn tại trong một mảng (array) hay không. Giá trị cần kiểm tra có thể là một đối tượng (object), một mảng (array), một chuỗi (string), một số nguyên (int), số thực (float) hoặc kiểu luận lý (bool) hay thậm chí là null.
2. Cú pháp của hàm in_array()
in_array(mixed $needle, array $haystack, bool $strict = false): bool
Trong đó,
$needle
là một giá trị cần tìm trong mảng $haystack. Giá trị này có thể là bất kỳ kiểu dữ liệu nào.$haystack
là mảng (array). $needle sẽ được tìm kiếm trong $haystack.$strict
là tham số tùy chọn. Mặc định là false. Nếu $strict là true thì kiểm tra cả kiểu dữ liệu của $needle khi tìm kiếm trong $haystack. Nếu giá trị $needle tồn tại trong $haystack nhưng khác kiểu dữ liệu với phần tử trong $haystack thì coi như $needle cũng không tồn tại trong $haystack.
Kiểu dữ liệu trả về của hàm in_array()
là true (1) – $needle tồn tại trong $haystack hoặc false (0) – $needle không tồn tại trong $haystack.
Lưu ý: Nếu $needle là chuỗi thì có phân biệt ký tự hoa thường khi kiểm tra.
3. Một số ví dụ sử dụng hàm in_array()
$os = array("Mac", "NT", "Irix", "Linux", "");
$result1 = in_array("Irix", $os);//true (1)
$result2 = in_array("mac", $os);//true (0)
$result3 = in_array(null, $os);//true (0)
echo var_dump($result1);//bool(true)
echo var_dump($result2);//bool(false)
echo var_dump($result3);//bool(true)
Kiểm tra array có tồn tại trong array hay không với hàm in_array()
<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' was found\n";
}
if (in_array(array('f', 'i'), $a)) {
echo "'fi' was found\n";
}
if (in_array('o', $a)) {
echo "'o' was found\n";
}
?>
Kết quả
'ph' was found
'o' was found
Hàm in_array() với $strict == true
$a = array('1.10', 12.4, 1.13);
$result4 = in_array('12.4', $a, true);//false (0)
$result5 = in_array(1.13, $a, true);//true (1)