php怎么检查数组是否存在元素

教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

php检查数组是否存在元素的方法

检查数组是否存在元素,就是检查数组是否为空数组(如果为空数组则数组中没有元素)。

方法1:使用“===”判断数组是否为“[]”

  • 如果返回TRUE,则为空数组,则数组中不存在元素

  • 如果返回FALSE,则不为空数组,则数组中存在元素

<?php  
header("content-type:text/html;charset=utf-8");
function f($arr){
	// 检查数组是否为空
	if($arr===[]) 
	    echo "数组中不存在元素"; 
	else
	    echo "数组中存在元素"; 
}


$array = array();
var_dump($array);
f($array);

$array = array(1,2,3);
var_dump($array);
f($array);
?>

1.png

方法2:使用count()或者sizeof()函数

一个长度为0的数组我们称之为“空数组”,空数组是一个真正的对象,只是包含元素个数为0。

因此,我们可以使用count()函数计算数组的长度,然后判断该长度是否为0;如果为0则为空数组,反之不为空数组。

count($arr,$m)

$m:为可选参数,可以省略。

  • 如果省略 $m 参数,或者将其设置为 COUNT_NORMAL 或者 0,count() 函数将不检测多维数组;

  • 如果 $m 设置为 COUNT_RECURSIVE 或者 1,count() 函数将递归计算数组中元素的个数,对于计算多维数组的元素个数尤为有用。

示例:

<?php  
header("content-type:text/html;charset=utf-8");
function f($arr){
	// 检查数组是否为空
	if(count($arr)) 
	    echo "数组中存在元素"; 
	else
	    echo "数组中不存在元素"; 
}


$array = array();
var_dump($array);
f($array);

$array = array(1,2,3);
var_dump($array);
f($array);
?>

2.png

sizeof()函数是 count() 函数的别名,也就是所 sizeof() 函数的功能及使用方法与 count() 函数完全相同。

<?php  
header("content-type:text/html;charset=utf-8");
function f($arr){
	// 检查数组是否为空
	if(sizeof($arr)) 
	    echo "数组中存在元素"; 
	else
	    echo "数组中不存在元素"; 
}

$array = array();
var_dump($array);
f($array);
?>

3.png

扩展知识:检查数组中是否存在指定元素

方法1:使用in_array()函数

在php中,想要查询数组是否存在某值,可以直接使用内置函数in_array()

in_array() 函数搜索数组中是否存在指定的值。如果在数组中找到值则返回 TRUE,否则返回 FALSE。

示例:

<?php
header('content-type:text/html;charset=utf-8');   
$sites = array("Google", "phpcn", "Taobao", "Facebook");
if (in_array("phpcn", $sites)){
    echo "存在指定值";
}
else{
    echo "不存在指定值";
}
?>

1.png

方法2:使用array_search()函数

array_search() 函数在数组中搜索某个键值,并返回对应的键名。

利用该函数也可以查询数组是否有存在某值,如果存在则则返回对应键名,如果不存在则返回false。

示例:

<?php
header('content-type:text/html;charset=utf-8');   
$sites = array("Google", "phpcn", "Taobao", "Facebook");
if (array_search("red", $sites)){
    echo "存在指定值";
}
else{
    echo "不存在指定值";
}
?>

2.png

--结束END--

本文标题: php怎么检查数组是否存在元素

本文链接: https://www.lsjlt.com/news/34431.html (转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢

  • php怎么检查数组是否存在元素

    检查数组是否存在元素的两种方法:1、使用“===”判断数组是否为“[]”,语法“数组===[]”,如果返回TRUE则数组中不存在元素,反之则数组中存在元素;2、用count()或sizeof()计算数组的长度,判断数组长度是否为0,语法“count(数组)==0”,如果为0则数组中不存在元素,反之数组中存在元素。
    阅读数:623 php php数组
  • php怎么检查类的方法是否存在

    PHP中可利用method_exists()函数来检查类的方法是否存在,该函数可检查类的方法是否存在于指定的对象中,语法“method_exists($object,$method_name)”;如果存在则返回true,否则返回false。
    阅读数:109 php 方法
  • php怎么检测数组中是否存在字符串元素

    检测步骤:1、利用array_filter()和is_string()过滤数组,返回包含全部字符串元素的过滤数组,语法“function f($v){return(array_filter($v));}$res=array_filter($arr,"f");”;2、判断过滤数组是否为空数组,语法“$res==[]”,如果是空数组则不存在字符串元素,反之则存在字符串元素。php零基础到就业直播视频课:
    阅读数:136 php php数组 php字符串
  • php数组怎么检测指定索引是否存在

    两种检测方法:1、使用array_key_exists()函数,可检查数组中是否存在指定索引,语法“array_key_exists(指定索引值,数组)”,返回值为true则存在,反之则不存在。2、使用isset()函数检测指定索引对应的数组元素是否存在即可,语法“isset($数组名[指定索引值])”,返回值为true则存在,反之则不存在。本教程操作环境:windows7系统、PHP8.1版、DE
    阅读数:250 php php数组
  • php二维数组中怎么检测子数组元素是否存在

    检测步骤:1、使用foreach语句循环遍历二维数组的外层数组元素,语法“foreach($arr as $k=>$v){//循环体}”;2、在循环体中,用is_array()判断外层元素“$v”是否为数组类型,如果是则用in_array()判断指定元素是否在该子数组中,语法“if(is_array($v)){if(in_array(指定元素,$v)){//存在操作}}”。php零基础到就业直播视频
    阅读数:870 php数组 php
  • php怎么检测数组是否存在指定下标

    两种检测方法:1、用array_key_exists()检测,语法“array_key_exists(下标值,数组)”。2、用array_keys()获取原数组的全部下标(键名),返回一个键名数组,用array_search()在键名数组中搜索指定值即可,语法“array_search("a",array_keys(原数组))”,返回对应键名则存在,返回FALSE则不存在。本教程操作环境:windo
    阅读数:167 php数组 php
  • javascript与php怎么检查元素是否在数组中

    这篇文章主要讲解了“javascript与php怎么检查元素是否在数组中”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript与php怎么检查元素是否在数组中”吧!javascr
    阅读数:868 javascript php
  • php怎么检测某键是否存在于某数组

    两种检测方法:1、使用array_key_exists()检测,语法“array_key_exists(指定键,指定数组)”,如果键存在则返回true,如果键不存在则返回false。2、利用“$数组名["指定键"]”语句访问指定数组元素,再利用isset()函数检测该数组元素是否存在,语法“isset($数组名["指定键"])”,如果键存在则返回TRUE,否则返回FALSE。本教程操作环境:wind
    阅读数:449 php php数组
  • php怎么查询数组某一个value是否存在

    查询是否存在的方法:1、使用in_array()函数,语法“in_array(value值,$array)”;2、使用array_search()函数,语法“array_search(value值,$array)”。
    阅读数:315 php 数组 值是否存在
  • php怎么查询文件夹是否存在

    在php中,可以利用file_exists()函数来检查一个文件夹是否存在,语法“file_exists(文件夹路径)”;如果返回值为“true”则文件夹存在,如果返回值为“false”则文件夹不存在。
    阅读数:331 php 文件夹
  • php怎么实现判断文件是否存在不存在则新建

    php实现判断文件是否存在不存在则新建的方法:【function mkdirs($dir, $mode = 0777){if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE;if...】。
    阅读数:141 php 文件
  • php中判断数组是否存在的函数叫什么

    php中判断数组是否存在的函数叫“is_array()”,该函数的作用是判断一个指定变量是否是数组,语法为“is_array($数组变量名)”;如果返回true,则指定数组存在,如果返回false,则指定数组不存在。本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php中判断数组是否存在的函数叫“is_array()”。is_array()函数的作用是判断一个指定变量是否是数
    阅读数:523 php php数组
  • php怎么查询数组是否有存在某值

    查询方法:1、用in_array(),可搜索数组中是否存在指定值,语法“in_array("值",数组)”;2、用array_search(),语法“array_search("值",数组)”,如果值存在则返回对应键名,反之返回false。
    阅读数:916 php 数组
  • php怎么判断数组元素是否都为null

    判断步骤:1、使用array_filter()函数调用回调函数来过滤数组,返回null元素,语法function f($n){return(is_null($n));}$res=array_filter($arr,"f");”;2、使用count()函数获取原数组和过滤数组的长度,对比两个数组长度是否相等,如果相等则都为null,返之则有其他元素。php零基础到就业直播视频课:进入学习程序员必备接口
    阅读数:242 php php数组
  • php如何判断方法和属性是否存在

    php判断方法和属性是否存在的方法:【method_exists(mixed $object,string $method_name );property_exists(mixed $class,string $property);】。
    阅读数:877 php 方法 属性
  • php怎么检查指定字符是否在数组的键值里面

    步骤:1、定义变量并赋值,语法“$con=0;”;2、用“foreach($arr as $v){//循环体}”循环遍历数组;3、在循环体中,用“if(strpos($v,"字符")){$c=1;break;}”获取指定字符在键值中的位置,如果返回值不为false,则变量“$c”的值变为1,并跳出循环;4、循环结束后,判断变量“$c”的值是否为1,若为则指定字符在数组的键值里。本教程操作环境:win
    阅读数:668 php数组 php
  • php怎么判断数组元素是否都大于0

    判断步骤:1、使用array_filter()函数调用回调函数来过滤数组,返回大于0的元素,语法“function f($num){return($num>0);}$res=array_filter($arr,"f");”,返回一个过滤数组;2、使用count()函数获取原数组和过滤数组的长度,对比两个数组长度是否相等,如果相等则数组元素都大于0,返之则有小于或等于0的元素。本教程操作环境:wind
    阅读数:495 php数组 php
  • php怎么判断数组是否有相同的元素

    判断步骤:1、用array_unique()去除数组中的重复值,语法“array_unique(原数组)”,会返回一个去重数组;2、用count()分别获取原数组和去重数组的数组长度,并判断两个数组长度是否相等,语法“count(原数组)==count(去重数组)”,如果两个数组长度相等,则数组里没有相同元素,反之则数组里有相同的元素。本教程操作环境:windows7系统、PHP8.1版、DELL
    阅读数:516 php数组 php
  • php怎么检查数组是否有某个键值对

    实现步骤:1、定义一个只包含指定键值对的数组,语法“$变量名=["键名"=>"键值"];”;2、利用array_intersect_assoc()函数将该键值对数组和原数组进行比较,语法“array_intersect_assoc(原数组,键值对数组)”,会返回一个包含相同元素的交集数组;3、判断交集数组是否为空数组,语法“交集数组===[]”,如果为空则数组中没有指定键值对。
    阅读数:521 php php数组
  • php怎么对比两个数组是否有相同元素

    对比方法:1、利用array_intersect_assoc()函数对比两个数组的键名和键值,语法“array_intersect_assoc($arr1,$arr2)”,会返回一个包含相同元素的交集数组;2、利用“==”运算符判断交集数组是否为空数组,语法“交集数组==[]”,如果交集数组为空数组,则两个数组里没有相同元素,如果交集数组不是空数组,则两个数组里有相同元素。本教程操作环境:windo
    阅读数:848 php php数组