PHP 8.5 并未引入
函数。截至目前(2024年),PHP 官方尚未发布 8.5 版本,最新稳定版是 PHP 8.3,而 PHP 8.4 仍在开发中,也未包含名为
的内置函数。
PHP 中获取数组第一个元素的常用方法
虽然没有
,但有多种简洁、安全的方式获取首个元素,尤其在 PHP 7.4+ 和 8.x 中更推荐以下写法:
使用解构语法(PHP 7.1+)
:适用于索引数组,可避免修改原数组
—— 最简方式,支持空数组兜底
使用+
:兼容关联/索引数组,不改变内部指针(
会重置指针,
读取当前值)
—— 注意:该操作会将数组内部指针移到首位(副作用)
立即学习
“
PHP免费学习笔记(深入)
”;
使用+ 键访问(PHP 7.3+)
:最健壮,适用于任意数组(包括空数组、关联数组),无副作用
PHP 8.5.5
PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。
下载
为什么不建议依赖“array_first()”?
该函数名常见于 Laravel 的
工具类(如
),属于框架扩展,并非 PHP 核心函数。直接在原生 PHP 中调用会报
。
若你看到相关代码,大概率是混淆了 Laravel 辅助函数或第三方库(如
等)。
PHP 8.4+ 值得关注的新特性(与数组相关)
PHP 8.4 计划引入
和
方法(RFC 已通过),但仅限
实例,不作用于普通数组。普通数组仍需用上述原生方式处理。
未来若真有
进入核心,官方一定会在 Changelog 和手册中明确标注 —— 建议以
PHP 官方数组函数文档
为准。
array_first()array_first()array_first()$first = $arr[0] ?? null;reset()current()reset()current()$first = reset($arr) ?: null;array_key_first()$key = array_key_first($arr); $first = $key !== null ? $arr[$key] : null;Illuminate\Support\ArrArr::first($array)Fatal error: Uncaught Error: Call to undefined function array_first()ramsey/array_replaceArrayObject::first()ArrayObject::last()ArrayObjectarray_first()