这篇“如何用php检查一个字符串是否在数组中”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何用php检查一个字符串是否在数组中”文章吧。
方法一:使用in_array()函数
PHP中的in_array()函数用于检查一个值是否存在于数组中。我们可以使用这个函数来查找一个字符串是否在数组中:
$array = array('apple', 'banana', 'orange', 'grape');
if (in_array('banana', $array)) {
echo 'Found';
} else {
echo 'Not Found';
}
这个代码会输出:Found。因为‘banana’存在于数组中。
下面我们把它改为搜索另一个字符串‘watermelon’:
$array = array('apple', 'banana', 'orange', 'grape');
if (in_array('watermelon', $array)) {
echo 'Found';
} else {
echo 'Not Found';
}
这个代码会输出:Not Found,因为‘watermelon’不在数组中。
方法二:使用array_search()函数
现在,我们来看看另一种方法来查找一个字符串是否在PHP数组中。使用array_search()函数:
$array = array('apple', 'banana', 'orange', 'grape');
if (array_search('banana', $array)) {
echo 'Found';
} else {
echo 'Not Found';
}
这个代码会输出:Found。因为‘banana’存在于数组中。
下面我们把它改为搜索另一个字符串‘watermelon’:
$array = array('apple', 'banana', 'orange', 'grape');
if (array_search('watermelon', $array)) {
echo 'Found';
} else {
echo 'Not Found';
}
这个代码会输出:Not Found,因为‘watermelon’不在数组中。
方法三:使用in_array()和strtolower()函数
在以上两种方法中,我们没有考虑大小写问题。所以以下的方法是忽略大小写的:
$array = array('Apple', 'Banana', 'Orange', 'Grape');
$search_term = 'banana';
if (in_array(strtolower($search_term), array_map('strtolower', $array))) {
echo 'Found';
} else {
echo 'Not Found';
}
使用array_map()函数处理遍历整个数组中的字符串,使用strtolower()函数将字符串转换为小写形式并将其存储在新数组中。然后,我们可以使用in_array()函数来查找指定的字符串是否在新数组中。
如果我们改为搜索另一个字符串例如‘Watermelon’:
$array = array('Apple', 'Banana', 'Orange', 'Grape');
$search_term = 'Watermelon';
if (in_array(strtolower($search_term), array_map('strtolower', $array))) {
echo 'Found';
} else {
echo 'Not Found';
}
这里输出 Not Found,因为新数组中没有任何字符串与‘Watermelon’匹配。
到这里,我们掌握了PHP中检查一个字符串是否存在于一个数组中的三种不同方法。从性能角度上看,in_array()函数和array_search()函数似乎更高效,并且没有遍历整个数组元素的操作。
以上就是关于“如何用php检查一个字符串是否在数组中”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。