Heim > Backend-Entwicklung > PHP-Tutorial > php数组函数 in_array 的用法及注意事项

php数组函数 in_array 的用法及注意事项

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-07-25 08:58:07
Original
1314 Leute haben es durchsucht
本文介绍下,php数组函数in_array的用法示例,及在使用中要注意的一些问题。有需要的朋友参考下。

php中操作数组的函数很多,in_array就是其中一个。

in_array函数 用于检查是否存在一个值的数组,即它可以判断当前数组中是否存在一个指定的值。

in_array (PHP 4, PHP 5)

in_array — 检查数组中是否存在某个值

说明 bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

在 haystack 中搜索 needle ,如果找到则返回 TRUE,否则返回 FALSE。

如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。 提示1:如果 needle 是字符串,则比较是区分大小写的。 提示2: 在 PHP 版本 4.2.0 之前,needle 不允许是一个数组。

例1,in_array() 例子

<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix";
}
if (in_array("mac", $os)) {
echo "Got mac";
}
?>
Nach dem Login kopieren

第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为: Got Irix

例2,in_array() 严格类型检查例子

<?php
$a = array('1.10', 12.4, 1.13);

if (in_array('12.4', $a, true)) {
echo "'12.4' found with strict check\n";
}
if (in_array(1.13, $a, true)) {
echo "1.13 found with strict check\n";
}
?>
Nach dem Login kopieren

输出: 1.13 found with strict check

例3,in_array() 中用数组作为 needle

<?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";
}
?>
Nach dem Login kopieren

输出: 'ph' was found 'o' was found

php数组函数in_array在使用时要注意的地方:

假如: 先声明一个数组为: $arr = array(*);

那么则有: in_array(0, $arr) == true 这与现实不符啊,聪明的,你看懂了吗?

解决办法: in_array(strval(0), $arr, true)) 这么判断才会得到正确的结果哦。

本文通过几个小例子,帮助大家学习与理解了php数组函数in_array的用法,并就一个要注意的细节作了说明。

程序员之家,祝大家学习进步。



Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage