A. php如何获取数组中是否存在某个值还有是否相同
您好,很高兴为你作答。
问题是有2个,按照规范化程序的设计原则,可以编写2个函数。由于这是一个二维数组,因为我们需要用到遍历和数组访问的知识。
针对第一个问题,判断所有的num值是否相同,也就是要一个结果:true or false。true代表是全部相同的,而false则反之。所以我们可以写出这样一个函数:
/**
*检测数组的num值是否全部相等
*@param$arrmixed待检测的数组
*@returnbooltrueorfalse
*/
functionNumIsEqual($arr){
$length=count($arr);
$compare=0;
for($i=0;$i<$length;$i++){
if($compare==0){
$compare=$arr[$i]['Num'];
}
if($compare!=$arr[$i]['num']){
returnfalse;
}
}
returntrue;
}
对于第二个问题,检测所有的display是否有0存在,同第一个问题一样,也是相同的处理方式,只不过判断逻辑稍有不同。大致如下:
/**
*检测数组的display是否有0存在
*@param$arrmixed待检测的数组
*@returnbooltrueorfalse
*/
functionNumIsEqual($arr){
$length=count($arr);
for($i=0;$i<$length;$i++){
if($arr[$i]['display']==0){
returntrue;
}
}
returnfalse;
}
B. 如何利用php判断一个参数在一个数组中是否存在
array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。
在 PHP 4.2.0 之前,函数在失败时返回 null 而不是 false。
如果第三个参数 strict 被指定为 true,则只有在数据类型和值都一致时才返回相应元素的键名。
你的$c是字符串
$c=array(1,2,3,4); 这样才是数组
$result = array_search($a, $c);
//这里要用三个等于号,因为两个等于号,如果键名是0也会进来
if ($result === false) {
echo “没有相同";
} else {
echo "有相同";
}
C. PHP如何检查一个数组内是否存在指定元素
用in_array函数
可以判断数组中是否存在一个值
in_array
(PHP
4,
PHP
5)
in_array
--
检查数组中是否存在某个值
说明
bool
in_array
(
mixed
needle,
array
haystack
[,
bool
strict]
)
在
haystack
中搜索
needle,如果找到则返回
TRUE,否则返回
FALSE。
如果第三个参数
strict
的值为
TRUE
则
in_array()
函数还会检查
needle
的类型是否和
haystack
中的相同。
注:
如果
needle
是字符串,则比较是区分大小写的。
注:
在
PHP
版本
4.2.0
之前,needle
不允许是一个数组。
例子
1.
in_array()
例子
?php
$os
=
array("Mac",
"NT",
"Irix",
"Linux");
if
(in_array("Irix",
$os))
{
echo
"Got
Irix";
}
if
(in_array("mac",
$os))
{
echo
"Got
mac";
}
?
第二个条件失败,因为
in_array()
是区分大小写的,所以以上程序显示为:
Got
Irix
例子
2.
in_array()
严格类型检查例子
?php
$a
=
array('1.10',
12.4,
1.13);
if
(in_array('12.4',
$a,
true))
{
echo
"'12.4'
found
with
strict
check\n";
}
if
(in_array(1.13,
$a,
true))
{
echo
"1.13
found
with
strict
check\n";
}
?
上例将输出:
1.13
found
with
strict
check
例子
3.
in_array()
中用数组作为
needle
?php
$a
=
array(array('p',
'h'),
array('p',
'r'),
'o');
if
(in_array(array('p',
'h'),
$a))
{
echo
"'ph'
was
found\n";
}
if
(in_array(array('f',
'i'),
$a))
{
echo
"'fi'
was
found\n";
}
if
(in_array('o',
$a))
{
echo
"'o'
was
found\n";
}
?
上例将输出:
'ph'
was
found
'o'
was
found
D. php 中 判断数组中是否有值
php 中 判断数组中是否有值,可以先把一个数组赋值给一个变量,然后用empty函数判断,这个变量是否为空,如果为空则代表数组没有值,如果为非空则代表有值。
<?php
$array=array();
if(empty($array)){
echo "则代表没有值";
}else{
echo "有值"
}
E. PHP判断数组中是否存在某一数值的函数in_array
函数:in_array -- 检查数组中是否存在某个值定义:bool in_array ( mixed needle, array haystack [, bool strict] )在haystack 中搜索 needle,如果找到则返回 TRUE,否则返回 FALSE。 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。 例子1. in_array() 例子<?php $os = array("Mac", "NT", "Irix", "Linux"); if (in_array("Irix", $os)) { echo "Got Irix";}if (in_array("mac", $os)) { echo "Got mac";}?> 第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为: Got Irix 例子2. in_array() 严格类型检查例子<?php $a = array('1.10', 12.4, 1.13); if (in_array('12.4', $a, true)) { echo "'12.4' found with strict check\n";}if (in_array(1.13, $a, true)) { echo "1.13 found with strict check\n";}?> 上例将输出:1.13 found with strict check 例子3. in_array() 中用数组作为 needle<?php $a = array(array('p', 'h'), array('p', 'r'), 'o'); if (in_array(array('p', 'h'), $a)) { echo "'ph' was found\n";}if (in_array(array('f', 'i'), $a)) { echo "'o' was found\n";}?
F. php判断一个数组里面的值是否有某个值
函数:in_array -- 检查数组中是否存在某个值定义:bool in_array ( mixed needle, array haystack [, bool strict] )在haystack 中搜索 needle,如果找到则返回 TRUE,否则返回 FALSE。 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。 例子1. in_array() 例子<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix";}if (in_array("mac", $os)) {
echo "Got mac";}?> 第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为: Got Irix 例子2. in_array() 严格类型检查例子<?php
$a = array('1.10', 12.4, 1.13);
if (in_array('12.4', $a, true)) {
echo "'12.4' found with strict check\n";}if (in_array(1.13, $a, true)) {
echo "1.13 found with strict check\n";}?> 上例将输出:1.13 found with strict check 例子3. in_array() 中用数组作为 needle<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' was found\n";}if (in_array(array('f', 'i'), $a)) {
echo "'o' was found\n";}?
G. 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中第一种和第二种的数据结构类似,都是关联数组。
H. php如何判断是否在数组中存在
in_array() 函数在数组中搜索给定的值。
语法
in_array(value,array,type)
参数
value
必需。规定要在数组搜索的值。
array
必需。规定要搜索的数组。
type
可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。
如:
<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");
if (in_array("Glenn",$people))
{
echo "Match found";
}
else
{
echo "Match not found";
}
?>
I. php判断二维数组中是否含有某个值
可以使用遍历二维数组的办法判断,还可以统计出现的次数或者输出key值。代码如下:
<?php
$d=100;
$tot=0;
$cars=array
(
array("Volvo",100,96),
array("BMW",100,59),
array("Toyota",110,100)
);
foreach($carsas$v)
{
if(is_array($v))
{
foreach($vas$a)
{
if($a==$d)
$tot++;
}
}
else
{
if($v==$d)
$tot++;
}
}
echo($tot);
?>
J. php里面如何检查数组是否存在值
可以使用in_array();