php数组查找元素
Ⅰ php判断数组元素是否存在
1、采用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;
}
2、
array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。array_key_exists(key,array
3、array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。array_search(value,array,strict),当数据量比较大的时候,用array_key_exists比较合适,但占用的内存比较大,
数组结构是: array(1, 2, 3, ..)和 array(1 => true, 2 => false, ..),内存使用比值为1:2。
具体跟内部实现有关系,在php中第一种和第二种的数据结构类似,都是关联数组。
Ⅱ 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;
Ⅲ PHP怎么查询数组中的指定元素
PHP 中的in_array() 函数可以实现 in_array() 函数在数组中搜索给定的值。 语法 in_array(value,array,type) value 必需。规定要在数组搜索的值。 array 必需。规定要搜索的数组。 type 可眩如果设置该参数为 true
Ⅳ php里如何把 数组里的指定元素给取出来
一、首先把数组赋予一个变量,如:
$arr=Array('0'=>'a','1'=>'b','2'=>'c');
二、取出数组的值
取第一个值:$arr[0]
取第二个值:$arr[1]
取第三个值:$arr[2]
取值的方法是通过引用下标号来访问某个值。
程序代码如下:
(4)php数组查找元素扩展阅读
设置 PHP 常量
设置常量,使用 define() 函数,函数语法如下:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
该函数有三个参数:
name:必选参数,常量名称,即标志符。
value:必选参数,常量的值。
case_insensitive:可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。
我们创建一个区分大小写的常量,,常量值为 "欢迎访问"的例子:
<?php
// 区分大小写的常量名
define("GREETING", "欢迎访问");
echo GREETING; // 输出 "欢迎访问"
echo '<br>';echo greeting; // 输出 "greeting"
?>
Ⅳ PHP数组中,如何查询所有等于指定值得元素下标
array array_flip ( array trans)
将trans中的所有元素变为下标,对应的原先的key(下标)变为值
适用于关联数组(索引数组没测试过)
比如
$a = array(
'name'=>'ansuir',
'pet'=>'cat'
);
经过转换后得到的新数组
$b = array_flip($a);
/*
$b=array(
'ansuir'=>'name',
'cat'=>'pet'
);
*/
这样,就可以通过$b['ansuir'] 得到 'name'了,也就是原先在$a 中的对应下标
这个函数多用于去重数组值,两次翻转之后可以将重复的数组元素去除
Ⅵ php数组,有什么办法获取下一个元素的键值
方法一:用循环
function getNext(&$array, $curr_key)
{
$next = 0;
reset($array);
do
{
$tmp_key = key($array);
$res = next($array);
} while ( ($tmp_key != $curr_key) && $res );
if( $res )
{
$next = key($array);
}
return $next;
}
function getPrev(&$array, $curr_key)
{
end($array);
$prev = key($array);
do
{
$tmp_key = key($array);
$res = prev($array);
} while ( ($tmp_key != $curr_key) && $res );
if( $res )
{
$prev = key($array);
}
return $prev;
}
方法二:用Iterator,不过要先得到position
// 默认查找键为key元素的后一个元素
function get_element($key, $arr, $who='next')
{
//查找键为$key元素的位置
$offset = array_search($key, array_keys($arr));
if(FALSE == $offset || NULL == $offset) { return ;}
//查找哪个元素,前一个或后一个?
if ('prev' == $who) {
$arr = array_reverse($arr);
} else if ('next' == $who) {
} else {
throw new Exception("错误的参数");
}
对许多方法 都可以在后盾里面找到 而且很详细 很容易理解
Ⅶ php如何找出一个数组重复次数最高的元素
使用array_count_values函数可以找出数组中相同值出现的次数,array_count_values用法如下:
array_count_values — 统计数组中所有的值出现的次数
array array_count_values ( array $input)
array_count_values() 返回一个数组,该数组用 input 数组中的值作为键名,该值在:input 数组中出现的次数作为值
input:统计这个数组的值
返回值:
返回一个关联数组,用 input数组中的值作为键名,该值在数组中出现的次数作为值。