php返回键值是第几个,php在数组中搜索某个键值并返回对应的键名的函数array_search()...

实例

在数组中搜索键值 "red",并返回它的键名:<?php

$a=array("a"=>"red","b"=>"green","c"=>"blue");

echo array_search("red",$a);

?>

定义和用法

array_search() 函数在数组中搜索某个键值,并返回对应的键名。

语法array_search(value,array,strict)参数描述

value必需。规定在数组中搜索的键值。

array必需。规定被搜索的数组。

strict可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:true

false - 默认如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的(参见实例 2)。

技术细节返回值:如果在数组中找到指定的键值,则返回对应的键名,否则返回 FALSE。如果在数组中找到键值超过一次,则返回第一次找到的键值所匹配的键名。

PHP 版本:4.0.5+

如果向函数传递无效的参数,函数返回 NULL(这个适用于自 PHP 5.3.0 起的所有的 PHP 函数)。

自 PHP 4.2.0 起,如果搜索失败,该函数返回 FALSE,而不是 NULL。

更多实例

实例 1

在数组中搜索键值 5,并返回它的键名(注意 ""):<?php

$a=array("a"=>"5","b"=>5,"c"=>"5");

echo array_search(5,$a,true);

?>

但是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;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值