使用多维数组时,使用传统的循环方法检索特定键值可能很麻烦。 PHP 提供了几个内置函数来有效地促进此过程。
使用 array_column()(PHP 5.5 及更高版本)
如果您的 PHP 版本为 5.5 或更高版本,您可以利用 array_column() 函数从多维数组中提取特定键的数组。这是现代项目的首选解决方案。
$users = array( array( 'id' => 'xxx', 'name' => 'blah', ), array( 'id' => 'yyy', 'name' => 'blahblah', ), array( 'id' => 'zzz', 'name' => 'blahblahblah', ), ); $ids = array_column($users, 'id'); print_r($ids); // Output: [xxx, yyy, zzz]
使用 array_map() 和匿名函数(PHP 5.3 及更高版本)
适用于 5.3 和 5.5 之间的 PHP 版本, array_map() 可以与匿名函数结合使用来实现类似的功能
$ids = array_map(function ($ar) { return $ar['id']; }, $users); print_r($ids); // Output: [xxx, yyy, zzz]
使用 create_function()(PHP 4.0.6 及更高版本)
在 PHP 5.3 之前,使用 create_function() 创建匿名函数是必要的。
$ids = array_map(create_function('$ar', 'return $ar["id"];'), $users); print_r($ids); // Output: [xxx, yyy, zzz]
通过利用这些内置函数,您可以高效地提取特定密钥来自多维数组的值,无需借助显式循环结构,从而产生简洁且优化的代码。
以上是如何在 PHP 中不循环地从多维数组中检索键?的详细内容。更多信息请关注PHP中文网其他相关文章!