插件窝 干货文章 php 查询数组有几个键值

php 查询数组有几个键值

count 数组 array 递归 472    来源:    2025-03-18

在 PHP 中,你可以使用 count() 函数来查询数组中键值对的数量。count() 函数会返回数组中元素的数量。

以下是一个简单的示例:

<?php
$array = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York"
);

$count = count($array);

echo "数组中有 " . $count . " 个键值对。";
?>

在这个例子中,count($array) 会返回 3,因为数组中有三个键值对。

注意事项:

  • count() 函数默认会递归地计算多维数组中的所有元素。如果你只想计算第一层的元素数量,可以传递第二个参数 COUNT_NORMAL 或者 1count() 函数。

例如:

<?php
$array = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York",
    "hobbies" => array("reading", "traveling")
);

$count = count($array, COUNT_NORMAL);

echo "数组中有 " . $count . " 个键值对。";
?>

在这个例子中,count($array, COUNT_NORMAL) 会返回 4,因为 hobbies 被视为一个单独的元素。

如果你想要递归地计算所有层级的元素数量,可以省略第二个参数或者传递 COUNT_RECURSIVE1

<?php
$array = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York",
    "hobbies" => array("reading", "traveling")
);

$count = count($array, COUNT_RECURSIVE);

echo "数组中有 " . $count . " 个元素。";
?>

在这个例子中,count($array, COUNT_RECURSIVE) 会返回 6,因为它会递归地计算 hobbies 数组中的元素。

希望这对你有帮助!