php利用array_search与array_column实现二维数组查找


Posted in PHP onJuly 08, 2019

在看php手册数组函数时,看到了一个高赞的用户回答传送门,利用array_search与array_column实现二维数组查找,不用自己写个循环,减少工作量。

<?php 
$userdb = array(
 0 => array(
      'uid' => 100,
      'name' => 'Sandra Shush',
      'url' => 'urlof100'
    ),
 
  1 => array(
      'uid' => 5465,
      'name' => 'Stefanie Mcmohn',
      'pic_square' => 'urlof100'
    ),
 
  2 => Array(
      'uid' => 40489,
      'name' => 'Michael',
      'pic_square' => 'urlof40489'
    )
);
 
$found_key = array_search(40489, array_column($userdb, 'uid'));
/**
 如果$userdb很大,建议使用一个变量,避免搜索每个元素时都调用array_column()
 $uid = array_column($userdb, 'uid');
 $found_key = array_search(40489, $uid);
 */
var_dump($found_key);
 
 ?>

题目描述:

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

代码:

<?php

function findInOneArray($target, $array){
  if(array_search($target,$array)!==false) return true; //1、array_search()是在以为数组中来找,现在我们要在二维数组数组中来,肯定要借用这个
  else return false; //2、!==false的真正用法,是既有返回false,又有返回表示false数组的0的时候
}

function Find($target, $array)
{
  foreach($array as $key => $val){
    if(findInOneArray($target, $val)) return true;
  }
  return false;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP实现的生成静态HTML速度快类库
Mar 31 PHP
PHP CLI模式下的多进程应用分析
Jun 03 PHP
php中的boolean(布尔)类型详解
Oct 28 PHP
PHP的password_hash()使用实例
Mar 17 PHP
php页面,mysql数据库转utf-8乱码,utf-8编码问题总结
Aug 27 PHP
PHP编程中的__clone()方法使用详解
Nov 27 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
Mar 01 PHP
详谈PHP中的密码安全性Password Hashing
Feb 04 PHP
thinkPHP5.0框架命名空间详解
Mar 18 PHP
php批量转换文件夹下所有文件编码的函数类
Aug 06 PHP
PHP扩展类型及安装方式解析
Apr 27 PHP
PHP实现rar解压读取扩展包小结
Jun 03 PHP
php实现获取近几日、月时间示例
Jul 06 #PHP
php判断/计算闰年的方法小结【三种方法】
Jul 06 #PHP
php使用filter_var函数判断邮箱,url,ip格式示例
Jul 06 #PHP
php中isset与empty函数的困惑与用法分析
Jul 05 #PHP
用PHP做了一个领取优惠券活动的示例代码
Jul 05 #PHP
php无限极分类实现方法分析
Jul 04 #PHP
php常用日期时间函数实例小结
Jul 04 #PHP
You might like
PHP实现对图片的反色处理功能【测试可用】
2018/02/01 PHP
JS仿flash上传头像效果实现代码
2011/07/18 Javascript
25个非常棒的jQuery滑块插件和教程小结
2011/09/02 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
2013/10/23 Javascript
jQuery滚动条插件nanoscroller使用指南
2015/04/21 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
jQuery unbind()方法实例详解
2016/01/19 Javascript
JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)
2016/06/21 Javascript
AngularJS 依赖注入详解及示例代码
2016/08/17 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
Ionic3实现图片瀑布流布局
2017/08/09 Javascript
详解JS中的柯里化(currying)
2017/08/17 Javascript
详解Angular操作cookies方法
2018/06/01 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
vue中组件的过渡动画及实现代码
2018/11/21 Javascript
swiper4实现移动端导航切换
2020/10/16 Javascript
[53:49]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python采集腾讯新闻实例
2014/07/10 Python
在Docker上开始部署Python应用的教程
2015/04/17 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
Python发送http请求解析返回json的实例
2018/03/26 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
Django框架创建mysql连接与使用示例
2019/07/29 Python
python+Django+pycharm+mysql 搭建首个web项目详解
2019/11/29 Python
tensorflow实现二维平面模拟三维数据教程
2020/02/11 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
python脚本定时发送邮件
2020/12/22 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
STP协议的主要用途是什么?为什么要用STP
2012/12/20 面试题
运动会邀请函范文
2014/02/06 职场文书
简易版租房协议书范本
2014/10/13 职场文书
公司更名通知函
2015/04/24 职场文书