php计算某个值在数组中个数,php判断多维数组是否存在某个值

我们先来解一下in_array检查数组中是否存在某个值

代码如下

$os = array("Mac", "NT", "Irix", "Linux");

echo “(1)”;

if (in_array("Irix", $os)) {

echo "Got Irix";

}

if (in_array("mac", $os)) {//in_array() 是区分大小写的

echo "Got mac";

}

$a = array('1.10', 12.4, 1.13);

echo "(2)";

if (in_array('12.4', $a, true)) {//in_array() 严格类型检查

echo "'12.4' found with strict checkn";

}

if (in_array(1.13, $a, true)) {

echo "1.13 found with strict checkn";

}

$a = array(array('p', 'h'), array('p', 'r'), 'o');

echo "(3)";

if (in_array(array('p', 'h'), $a)) {

echo "'ph' was foundn";

}

if (in_array(array('f', 'i'), $a)) {//in_array() 中用数组作为 needle

echo "'fi' was foundn";

}

if (in_array('o', $a)) {

echo "'o' was foundn";

}

?>

程序运行结果是:

(1)Got Irix

(2)1.13 found with strict check

(3)'ph' was found 'o' was found

上面都是一维数组了很简单,下面来看多维数据是否存在某个值

代码如下

$arr = array(

array('a', 'b'),

array('c', 'd')

);

in_array('a', $arr); // 此时返回的永远都是 false

deep_in_array('a', $arr); // 此时返回 true 值

function deep_in_array($value, $array) {

foreach($array as $item) {

if(!is_array($item)) {

if ($item == $value) {

return true;

} else {

continue;

}

}

if(in_array($value, $item)) {

return true;

} else if(deep_in_array($value, $item)) {

return true;

}

}

return false;

}

该方法是在php帮助手册in_array方法详解页面下的评论看到的,平时没事多看看帮助手册,特别是后面的经典评论,里面收集了不少人的经典方法啊。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值