信息发布→ 登录 注册 退出

array_values()在php中返回数组的操作

发布时间:2025-12-16

点击量:
array_values() 是 PHP 中用于重置数组键名为连续数字索引的非破坏性函数,它丢弃原键、提取值并返回新数组;常用于关联转索引、过滤后重排、确保 JSON 数组格式及归一化处理。

array_values()在php中返回数组的操作

array_values() 是 PHP 中用于重置数组键名的内置函数,它会返回一个新数组,其中只保留原数组的值,并将所有键重新索引为从 0 开始的连续数字索引(即“纯数字索引数组”)。

作用:把关联数组转成索引数组

当数组的键是字符串(如 ['name' => 'Tom', 'age' => 25])或不连续/非数字键(如 [5 => 'a', 10 => 'b'])时,array_values() 会丢弃原有键名,只提取值并按顺序重新编号:

$arr = ['city' => 'Beijing', 'code' => 100000, 'country' => 'China'];
$new = array_values($arr);
// $new 等于 ['Beijing', 100000, 'China'],键变为 0, 1, 2

对已有序索引数组也有效(但通常没必要)

如果原数组已经是数字键且连续(如 [0=>'a', 1=>'b', 2=>'c']),调用 array_values() 不会改变内容,只是“复制一份并确保键规范”:

  • 适合在不确定键是否被 unset 或打乱后做归一化处理
  • 常用于配合 foreachfor 循环,避免因键缺失导致逻辑出错
  • array_keys() 配合使用可分别提取键和值

注意点:不修改原数组,只返回新数组

array_values()非破坏性操作,原数组保持不变:

易通cmseasy免费的企业建站程序2.0 UTF-8 build 201000510 中文版 易通cmseasy免费的企业建站程序2.0 UTF-8 build 201000510 中文版

易通(企业网站管理系统)是一款小巧,高效,人性化的企业建站程序.易通企业网站程序是国内首款免费提供模板的企业网站系统.§ 简约的界面及小巧的体积:后台菜单完全可以修改成自己最需要最高效的形式;大部分操作都集中在下拉列表框中,以节省更多版面来显示更有价值的数据;数据的显示以J*ascript数组类型来输出,减少数据的传输量,加快传输速度。 § 灵活的模板标签及模

易通cmseasy免费的企业建站程序2.0 UTF-8 build 201000510 中文版 0 查看详情 易通cmseasy免费的企业建站程序2.0 UTF-8 build 201000510 中文版

立即学习“PHP免费学习笔记(深入)”;

$original = ['x' => 10, 'y' => 20];
$result = array_values($original);
// $original 还是 ['x'=>10, 'y'=>20]
// $result 是 [10, 20]

若需就地修改,需手动赋值:$arr = array_values($arr);

常见搭配用法

  • array_filter() 连用:过滤后重排键(否则可能留下空缺键)
  • json_encode() 配合:确保输出为 JSON 数组(而非对象),因为 PHP 中只有「连续数字索引数组」才会被 encode 成 []
  • 检查是否为纯索引数组:array_values($arr) === $arr(前提是值本身可严格比较)
基本上就这些。不复杂但容易忽略——尤其在处理用户输入、API 返回或经过 unset 的数组时,加一层 array_values() 往往能省去很多键相关的问题。

以上就是array_values()在php中返回数组的操作的详细内容,更多请关注其它相关文章!


相关文章: 4399免费游戏网址入口 4399小游戏免费入口点开即玩  在哪找SublimeJ远程工具_SFTP插件配置教程  c++ dfs和bfs代码 c++深度广度优先搜索算法  深入理解与实现最大堆的Heapify过程:常见错误与修正  Golang如何测试channel通信行为_Golang channel通信测试与分析方法  小米Civi 4录制视频过暗_小米Civi 4亮度优化  Win11怎么修改默认浏览器_Windows 11设置Chrome为默认  Golang如何实现Web接口签名验证_Golang Web接口签名校验开发方法  基于多条件高效更新SQL表:利用CASE表达式优化业务逻辑  Angular中单选按钮的正确使用与常见陷阱解析  优酷会员付费后没到账怎么办_优酷会员充值异常及解决方法  PHP中基于用户角色的页面访问控制实践  Golang如何实现状态模式管理对象状态_Golang State模式实现技巧  荣耀Play7TPro怎样在信息App置顶客服对话_iPhone荣耀Play7TPro信息App置顶客服对话【优先查看】  如何使用spryker/configurable-bundles-products-resource-relationship模块解决复杂产品捆绑关系难题  高德地图怎么看全景照片_高德地图全景照片浏览教程  J*a如何使用AtomicInteger控制计数_J*a无锁计数器性能分析  深入理解Go语言中的指针类型:以*string为例  QQ邮箱稳定登录入口_QQ邮箱官方网站网页版使用  12306选座怎么选到特殊座位_12306特殊座位选择注意事项  Python多版本共存与虚拟环境管理深度指南  MAC如何将整个网页截长图_MAC使用Safari的导出为PDF或第三方工具  qq浏览器打开空白页怎么办 qq浏览器启动后显示白屏的解决教程  J*a TimerTask中HashMap意外清空的深层原因与解决方案  GemBox Document HTML转PDF垂直文本渲染问题及解决方案  汽水音乐网页版使用入口_汽水音乐电脑版播放指南  铁路12306官网网页端快速入口 铁路12306官方首页登录教程  QQ邮箱官方网站登录入口_QQ邮箱网页版在线使用  如何在Promise链中优雅地中断后续then执行  EMS快递官网app_中国邮政速递物流手机客户端  CSS Box Model与弹性按钮:维持布局稳定的动画实践  Python复杂任务中断策略:通过回调函数实现优雅停止  零跑汽车11月交付量达70327台 实现连续9个月正增长  提升Kafka消费者健壮性:会话超时处理与消息处理语义  如何使用J*aScript精确选择并批量修改特定父元素下子链接的样式  文心一言怎样用批量生成做多版文案_文心一言用批量生成做多版文案【批量创作】  如何在Python中使用Optional类型处理可变对象并避免Pylint警告  Go Martini框架:动态服务解码后的图片内容  vivo手机参数配置怎么增强信号_vivo手机参数配置信号增强方法  PHP文件上传至S3:策略、考量与避免本地存储的挑战  C++如何实现一个装饰器模式_C++设计模式之动态地给对象添加额外职责  处理Kafka消息时会话超时与实现幂等性消费者  在J*a中如何开发简易仓库管理与库存统计_仓库管理库存统计项目实战解析  AO3中文官网链接_AO3网页版稳定镜像站  qq游戏网页版直接玩_qq游戏免下载快速入口  Go语言中JSON数据解码与字段访问指南  微信群消息显示延迟如何解决 微信群消息刷新优化方法  如何使 Jest 模拟函数默认抛出错误以提高测试效率  UC浏览器如何安装插件 UC浏览器添加扩展程序详细教程【进阶】  小米14应用无法联网原因分析_小米14网络权限修复 

在线客服
服务热线

服务热线

4008988990

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!