当前位置:首页 » 编程语言 » php数组搜索

php数组搜索

发布时间: 2022-06-01 01:14:44

1. php里说出数组的常用函数及用法

PHP常用操作数组的函数
变量和数组的转换
compact() 将变量整合成数组

extract() 将数组中的每个值以键的名分解成变量
变量和字符串转换
explode() 以某个子串分解字符串成数组
implode() 将一维数组根据某个符号拼接成字符串
数组与数组之间关系
array_merge() 合并/并集
array_diff() 差集
array_intersect() 交集
数组值的操作
array_pop() 删除(弹出)数组最后一个值
array_push() 向数组中追加一个值
判断数组是否存在数组中
in_array() 判断一个值是否存在数组中
array_key_exists() 判断键是否存在数组中
数组去重
array_unique() 数组去重
获取二维数组中的值的集合
array_column() 获取二维数组中的值的集合
提取数组的键与值
array_values 提取数组的值构成一维数组
array_keys 提取数组的键构成一维数组
返回数组中的随机的键
array_rand() 返回数组中的随机的键
返回数组中值的数量
count() 返回数组中值的和
查询数组中的值
array_search() 查询数组中的值是否存在/in_array()有点相似
排序
sort() 排序有很多种,按键或值升降序
array_multisort() 多维数组排序
分割数组
array_chunk()

2. PHP如何检查一个数组内是否存在指定元素

PHP 中的in_array() 函数可以实现

in_array() 函数在数组中搜索给定的值。

语法
in_array(value,array,type)
value 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

如果给定的值 value 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。

如果没有在数组中找到参数,函数返回 false。

注释:如果 value 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。
例如:

<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");

if (in_array("Glenn",$people))
{
echo "Match found";
}
else
{
echo "Match not found";
}
?>

输出:

Match found

3. PHP怎么搜索数组的键并查找到对应的值

array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回FALSE1.搜索关联数组键如果在一个数组中找到一个指定的键,函数array_key_exists()返回TRUE,否则返回FALSE。其形式如下:boolean array_key_exists(mixed key, array array)下面的例子将在数组键中搜索Ohio,如果找到,将输出这个州加入育关信息:$state["Delaware"]="December 7,1787";$state["Pennsylvania"]="December 12, 1787";$state["Ohio"]="March l,1803";86 第5章数 组if (array_key_exists("Ohio", $state》printf("Ohio joined the Union on %s", $state["Ohio"]);结果如下:2.搜索关联数组值array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回FALSE。其形式如下:下面的例子在$state中搜索一个特定的日期(December7),如果找到,则返回相应州的有关信息:$state["Ohio"] = "March l"; .$statef"Delaware"l = "December 7";$state["Pennsylvania"] = "December 12u;$founded = array_search("December 7", $state),i+ ($founded) printf("%s was founded on %s.", $founded, $state[$founded]);输出如下:Delaware was十ounded on December 7.5.4.2获取数组键array_keys()函数返回一个数组,其中包含所搜索数组中找到的所有键。其形式知下:array array_keys(array array【J mixed search_value])如果包含可选参数search value,则只会返回与该值匹配的键。下面的例子将输出$state数组中找到的所有键值:$state["Delaware"] = "December 7, 1787";$state["Pennsylvania"] = "December 12, i787";$state["New Jersey"] = "December 18, 1787";$keys = array_keys($state);print_r($keys);输出如下:5.4.3获取数组值array_values()函数返回一个数组中的所有值,并自动为返回的数组提供数值索引。其形式如下:array array_values(array array)5.5遍历数组 87下面的例子将获取$population中找到的各州人口数:$population=array("Ohio"=>"11,421,267", "Iowa"=>"2,936,760");print_r(array_values($population》;这个例子的输出如下:5.5遍历数组通常需要遍历数组并获得各个键或值(或者同时获得键和值),所以毫不奇怪,PHP为此提供了一些函数来满足需求。许多函数能完成两项任务,不仅能获取当前指针位置的键或值,还能将指针移向下一个适当的位置。本节将介绍这些函数。5.5.1 获取当前数组键key()函数返回input_array中当前指针所在位置的键。其形式如下:mixed key(array array)下面的例子通过迭代处理数组并移动指针来输出$capitals数组的键:$capitals=array("Ohio"=>"Columbus", "Iowa"=>"Des Moines");echo "<p>Can you name the capitals of these states?</p>";while($key=key($capitals》{printf("%s <br,>“,$key);next($capitals);,将返回以下结果:Ohio

4. PHP 数组 怎么实现关键词查找

这个关键词是包含在数组中的key中还是value中?

如果是包含在key中的话,可以这么写

foreach($arrayas$k=>$v){
if(strstr($k,$keyword,true)){
return$k;
}
}

如果关键词包含在value中的话,就这么写

foreach($arrayas$k=>$v){
if(strstr($v,$keyword,true)){
return$v;
}
}

5. php 数组查询

<?php
$a=array ( [0] => array ( [coupon_price] => 91.80 [coupon_rate] => 8500.00 [num_iid] => 17656720315 [title] => 年中大促 限时99元包邮 2012夏装新款缕空拼色百褶收腰雪纺连衣裙 ) [1] => array ( [coupon_price] => 99.01 [coupon_rate] => 7123.00 [num_iid] => 15233729437 [title] => 年中大促 限时99元包邮 2012夏装新款缕空拼色百褶收腰雪纺连衣裙 ) )
function getPrice($a,$id){
$price=0;
foreach($a as $val){
if($val['num_iid']==$id){
$price=$val['coupon_price'];
}
}
return $price;
}
echo getPrice($a,15233729437);
?>

6. php中怎么搜索相关联数组键值及获取之

array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回FALSE
1.搜索关联数组键
如果在一个数组中找到一个指定的键,函数array_key_exists()返回TRUE,否则返回FALSE。其
形式如下:
booleanarray_key_exists(mixedkey,arrayarray)
下面的例子将在数组键中搜索Ohio,如果找到,将输出这个州加入育关信息:
$state["Delaware"]="December
7,1787";
$state["Pennsylvania"]="December12,1787";
$state["Ohio"]="March
l,1803";
86第5章数组
if(array_key_exists("Ohio",$state》
printf("Ohio
joinedtheUnionon%s",$state["Ohio"]);
结果如下:
2.搜索关联数组值
array_search()函数在一个数组中搜索一个指定的值,如果找到则返回相应的键,否则返回FALSE。
其形式如下:
下面的例子在$state中搜索一个特定的日期(December7),如果找到,则返回相应州的有关信息:
$state["Ohio"]
="Marchl";.
$statef"Delaware"l="December7";
$state["Pennsylvania"]=
"December12u;
$founded=array_search("December7",$state),
i+
($founded)printf("%swasfoundedon%s.",$founded,
$state[$founded]);
输出如下:
Delawarewas十oundedonDecember7.
5.4.2获取数组键
array_keys()函数返回一个数组,其中包含所搜索数组中找到的所有键。其形式知下:
array
array_keys(arrayarray【Jmixedsearch_value])
如果包含可选参数search
value,则只会返回与该值匹配的键。下面的例子将输出$state数组中
找到的所有键值:
$state["Delaware"]=
"December7,1787";
$state["Pennsylvania"]="December12,
i787";
$state["NewJersey"]="December18,1787";
$keys=
array_keys($state);
print_r($keys);
输出如下:
5.4.3获取数组值
array_values()函数返回一个数组中的所有值,并自动为返回的数组提供数值索引。其形式如下:
array
array_values(arrayarray)
5.5遍历数组
87
下面的例子将获取$population中找到的各州人口数:
$population=array("Ohio"=>"11,421,267",
"Iowa"=>"2,936,760");
print_r(array_values($population》;
这个例子的输出如下:
5.5遍历数组
通常需要遍历数组并获得各个键或值(或者同时获得键和值),所以毫不奇怪,PHP为此提供了
一些函数来满足需求。许多函数能完成两项任务,不仅能获取当前指针位置的键或值,还能将指针移
向下一个适当的位置。本节将介绍这些函数。
5.5.1
获取当前数组键
key()函数返回input_array中当前指针所在位置的键。其形式如下:
mixedkey(array
array)
下面的例子通过迭代处理数组并移动指针来输出$capitals数组的键:
$capitals=array("Ohio"=>"Columbus",
"Iowa"=>"DesMoines");
echo"<p>Canyounamethecapitalsofthese
states?</p>";
while($key=key($capitals》{
printf("%s
<br,>“,$key);
next($capitals);

将返回以下结果:
Ohio

7. php如何查找数组中是否含有某个元素

1、in_array �0�2 ‘函数在数组中搜索给定的值。 in_array(value,array,type)type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。 2、array_key_exists array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。array_key_exists(key,array) 3、array_search ‘array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。array_search(value,array,strict) 注意:在数据量不大的时候,比如小于1000,查找用哪一种都行,都不会成为瓶颈;当数据量比较大的时候,array_key_exists比较合适。当然这里array_key_exists占用的内存比较大,经测算数组结构是: array(1, 2, 3, ..)和 array(1 = true, 2 = false, ..)他们内存使用比值为1:2;

8. php如何在多维数组中搜索给定的值,如果成功则返回相应的键名

<?php

$arr=array('a'=>1,array('b'=>2),'c'=>3,array(array('d'=>4),'e'=>5));

echosearchKey($arr,4);

functionsearchKey($array,$value){
foreach($arrayas$key=>$row){
if(!is_array($row)){
if($row==$value){
$r=$key;
return$key;
}
}else{
$r=searchKey($row,$value);
if($r!=-1){
return$r;
}
}
}
return-1;
}

?>

热心网友回答你的那个会有问题的,你可以把1 2 3 4 5都试验一下,而且他那个只支持搜索4.

我这已经优化过了,没有问题。

网采纳。

9. PHP数组查询

你这个数组是默认的数字索引模式,索引是从0开始计算的,你的问题可以使用array_search这个函数来查找对应的值是不是存在,如果存在返回所在索引,不存在返回false,例子:

<?php
$tian=array('','甲','乙','丙','丁','戊','己','庚','辛','壬','癸');
$key=array_search('辛',$tian);
if($key!==false)
echo'辛这个值在数组$tian中的索引是'.$key;
else
echo'辛这个值在数组$tian中不存在';
?>

10. php里面函数array_search的意思是什么

在数组中搜索给定的值,如果成功则返回首个相应的值

热点内容
中国十大解压电影 发布:2025-04-23 06:13:07 浏览:582
产品直播脚本范文例子 发布:2025-04-23 06:10:24 浏览:312
安卓id加密 发布:2025-04-23 06:10:23 浏览:388
python行内if 发布:2025-04-23 06:10:20 浏览:219
ubuntu编译32位程序 发布:2025-04-23 06:10:20 浏览:959
什么在资源配置中起宏观调控作用 发布:2025-04-23 06:05:25 浏览:723
换手机怎么把安卓app移到苹果手机 发布:2025-04-23 06:05:20 浏览:899
java的时间格式 发布:2025-04-23 06:04:39 浏览:975
美团安卓哪里再次配送 发布:2025-04-23 05:56:07 浏览:978
油画价格算法 发布:2025-04-23 05:54:37 浏览:532