php 数组字符串搜索array_search技巧

yipeiwu_com6年前PHP代码库

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 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结

介绍 今天发现php5.1.*和php5.2.*在数据库预编译代码执行的时候出现差异。 预编译优点 1.使用占位符,避免逐字输入数据到SQL中。自动处理引号和反斜线等字符的转义——增加安...

SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据

1.SESSION信息保存在哪? 复制代码 代码如下: <?php session_start(); $_SESSION['name']='marcofly'; ?> se...

php使用pdo连接sqlite3的配置示例

本文实例讲述了php使用pdo连接sqlite3的配置方法。分享给大家供大家参考,具体如下: 刚刚开始使用php+sqlite 的时候,一直以为自己使用的是sqlite3 ,其实不是,p...

php2html php生成静态页函数

<?php /** ------------------------ Function: php2html($in_Url, $out_htmlFile, $out_logFile...

PHP实现的杨辉三角求解算法分析

PHP实现的杨辉三角求解算法分析

本文实例讲述了PHP实现的杨辉三角求解算法。分享给大家供大家参考,具体如下: ♥ 前言 对于 杨辉三角 是什么的问题,请参考百度百科的详细解释: 杨辉三角 杨辉三角,是二项...