php 数组字符串搜索array_search技巧


Posted in PHP onJuly 05, 2016

php 搜索数组字符串我们一般会用到array_search和in_array两个函数

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。

但是array_search一般用到搜索一个数组中符合要求的第一个字符串。如果搜索的字符串在数组中含有多个,使用array_search的话,是 不行的。这时,我们使用array_keys()函数,实现搜索的字符串在数组中含有多个,

看一下如下例子:

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); 
$a=array_search( "blue",$array); //将输出$a=0; 
$b=array_search( 'red',$array); //将只会输出$b=1; 
$p = array_keys($array, 'red');//搜索的字符串在数组中含有多个 
if(is_array($p)) {
  foreach($p as $v) { 
    echo $val."出现在".$v . " ";
   }
}else { 
  echo $val."出现在".array_search($val, $array)." ";
}

例二:

$array = array(4,5,7,8,9,10); 
$found = array_search(8, $array); //调用array_search函数并输出查找结果 
if($found){ //如果找到输出键 
echo "已找到,键为".$found; 
}else{ //如果没有找到输出错误信息 
echo "没有找到"; 
}

下面我们来看看in_array函数

采用in_array(value,array,type)

type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

$arr = array('可以','如何','方法','知道','?]有','不要');
//in_array(value,array,type)
$isin = in_array("如何2",$arr);
if($isin){
  echo "in====".$isin;
}else{
  echo "out====".$isin;
}

以上就是本文的全部内容了,希望大家能够喜欢

PHP 相关文章推荐
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
Mar 06 PHP
PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台
Aug 03 PHP
PHP读取txt文件的内容并赋值给数组的代码
Nov 03 PHP
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 PHP
php过滤表单提交的html等危险代码
Nov 03 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
Dec 15 PHP
学习php设计模式 php实现装饰器模式(decorator)
Dec 07 PHP
9个比较实用的php代码片段
Mar 15 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
Sep 11 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
Jul 21 PHP
PHP单文件上传原理及上传函数的封装操作示例
Sep 02 PHP
浅谈如何提高PHP代码质量之端到端集成测试
May 28 PHP
php单链表实现代码分享
Jul 04 #PHP
Yii2.0预定义的别名功能小结
Jul 04 #PHP
Yii控制器中操作视图js的方法
Jul 04 #PHP
深入分析PHP优化及注意事项
Jul 04 #PHP
yum命令安装php7和相关扩展
Jul 04 #PHP
PHP中Array相关函数简介
Jul 03 #PHP
PHP与Java对比学习日期时间函数
Jul 03 #PHP
You might like
搜索和替换文件或目录的一个好类--很实用
2006/10/09 PHP
php 变量定义方法
2009/06/14 PHP
php 高效率写法 推荐
2010/02/21 PHP
php url路由入门实例
2014/04/23 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
php中array_column函数简单实现方法
2016/07/11 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
2009/11/28 Javascript
Pro JavaScript Techniques学习笔记
2010/12/28 Javascript
javascript数组的使用
2013/03/28 Javascript
jquery改变tr背景色的示例代码
2013/12/28 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
jQuery封装的tab选项卡插件分享
2015/06/16 Javascript
大白话讲解JavaScript的Promise
2017/04/06 Javascript
vue-cli单页应用改成多页应用配置详解
2017/07/14 Javascript
vue 引入公共css文件的简单方法(推荐)
2018/01/20 Javascript
vue项目开发中setTimeout等定时器的管理问题
2018/09/13 Javascript
vue-cli项目无法用本机IP访问的解决方法
2018/09/20 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
Vue实现点击当前行变色
2020/12/14 Vue.js
React实现todolist功能
2020/12/28 Javascript
[05:20]卡尔工作室_DOTA2新手教学_DOTA2超强新手功能
2013/04/22 DOTA
[01:18:35]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第一场 1月29日
2021/03/11 DOTA
python原始套接字编程示例分享
2014/02/21 Python
Python学习思维导图(必看篇)
2017/06/26 Python
python GUI实例学习
2017/11/21 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
2019/01/08 Python
在Python文件中指定Python解释器的方法
2019/02/18 Python
OpenCV中VideoCapture类的使用详解
2020/02/14 Python
用Python在Excel里画出蒙娜丽莎的方法示例
2020/04/28 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
2014年电厂工作总结
2014/12/04 职场文书
个人总结怎么写
2015/02/26 职场文书
2015毕业生简历自我评价
2015/03/02 职场文书
MySQL单表千万级数据处理的思路分享
2021/06/05 MySQL