登录
首页 >  文章 >  php教程

array_keys与array_values区别详解

时间:2025-12-09 21:15:52 367浏览 收藏

推广推荐
免费电影APP ➜
支持 PC / 移动端,安全直达

“纵有疾风来,人生不言弃”,这句话送给正在学习文章的朋友们,也希望在阅读本文《array_keys与array_values区别及用途解析》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新文章相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!

array_keys 返回数组的所有键名,可用于获取索引或查找特定值对应的键,如 array_keys($fruits, 'apple') 返回 [0, 2];array_values 返回所有值并重置为从 0 开始的数字索引,适用于整理数据结构。两者常配合使用,区别在于提取的是键还是值,对关联数组处理时尤为明显。

php中array_keys和array_values区别_php获取键名键值函数用途

在 PHP 中,array_keysarray_values 是两个常用的数组处理函数,它们分别用于获取数组的键名和键值,用途不同但常配合使用。

array_keys:获取数组的所有键名

该函数返回一个包含原数组中所有键名的新数组。

适用场景:当你需要知道数组有哪些索引或键时使用,比如遍历配置项、检查字段是否存在等。

示例:

$person = ['name' => 'Alice', 'age' => 25, 'city' => 'Beijing'];
$keys = array_keys($person);
// 结果:['name', 'age', 'city']

还可以配合搜索值使用,找出某个值对应的所有键。

$fruits = ['apple', 'banana', 'apple', 'orange'];
$apple_keys = array_keys($fruits, 'apple');
// 结果:[0, 2]

array_values:重新索引并返回所有键值

该函数返回一个只包含原数组中所有值的新数组,并将键重新从 0 开始连续编号。

适用场景:去除关联键名影响,获取纯数值索引的值列表,常用于数据整理或传递给需要数字索引的函数。

示例:

$data = ['a' => 10, 'b' => 20, 'c' => 30];
$values = array_values($data);
// 结果:[10, 20, 30](键变为 0, 1, 2)

即使原数组是无序或字符串键,也能得到整齐的索引数组。

两者主要区别总结

  • array_keys 返回的是键(key),适用于查看结构或查找特定值对应的键。
  • array_values 返回的是值(value),并重置为数字索引,适合提取数据内容。
  • 对关联数组操作时差异明显;对数字索引数组,array_keys 返回原始键(可能是非连续的),而 array_values 总是返回从 0 开始的新索引值数组。

基本上就这些。根据你要提取的是“名字”还是“内容”,选择对应函数即可。不复杂但容易忽略细节,尤其是 array_keys 支持值过滤这一点很实用。

终于介绍完啦!小伙伴们,这篇关于《array_keys与array_values区别详解》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>