在php中要实现数组搜索方法有很多种,我知道最简单的就是in_array与遍历数组后再一个个对比,其它还有更多更好方法,下面我来介绍介绍。
一维数组搜索很简单in_array()
如果 value 参数是字符串,且 type 参数设置为 true,则搜索区分大小写
代码如下 | 复制代码 |
$people = array("Peter", "Joe", "Glenn", "Cleveland"); if (in_array("Glenn",$people)) 输出: Match found |
array_key_exists()函数
如果在一个数组中找到一个指定的键,函数array_key_exists()返回true,否则返回false。其形式如下:
boolean array_key_exists(mixed key,array array);
下面的例子将在数组键中搜索apple,如果找到,将输出这个水果的颜色:
代码如下 | 复制代码 |
//apple's color is red |
array_search()函数
array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回false。其形式如下:
mixed array_search(mixed needle,array haystack[,boolean strict])
下面的例子在$fruits中搜索一个特定的日期(December 7),如果找到,则返回相应州的有关信息:
代码如下 | 复制代码 |
//watermelon was founded on green. |
array_keys()函数
array_keys()函数返回一个数组,其中包含所搜索数组中找到的所有键。其形式如下:
array array_keys(array array[,mixed search_value])
如果包含可选参数search_value,则只会返回与该值匹配的键。下面的例子将输出$fruit数组中找到的所有数组:
代码如下 | 复制代码 |
//Array ( [0] => apple [1] => banana [2] => watermelon ) |
array_values()函数
array_values()函数返回一个数组中的所有值,并自动为返回的数组提供数值索引。其形式如下:
array array_values(array array)
下面的例子将获取$fruits中找到的各元素的值:
代码如下 | 复制代码 |
//Array ( [0] => red [1] => yellow [2] => green ) |
上面讲到的都只是一维数组搜索了,如果要实现二维数据或多维数据我们可参考下面实例
1 php搜索多维数组的键值
如下面例子:
代码如下 | 复制代码 |
$foo[1]['a']['xx'] = 'bar 1'; 如果要查找 bar 3 怎么进行查找呢。有三个结果,而这三个结果都要,看下面的函数: print_r($result); 输出结果为如下: |
php搜索多维数组的键名
代码如下 | 复制代码 |
function array_search_key($needle, $haystack){ foreach ($haystack as $key1=>$value1) { return $nodes_found; print_r($result); 输出结果为如下: Array [1] => Array [2] => Array ) |

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。