文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么用php检查一个字符串是否在数组中

2023-05-14 20:01

关注

在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检查一个字符串是否在数组中的详细内容,更多请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯