You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Arr::only()获取数组中的指定键(含多维数组及键带点符号场景)

能否用Arr::only()获取多维数组中的指定键?

当然可以!不过有个特殊场景需要注意:如果你的数组键本身包含点符号,那常规用来解析多维数组路径的点符号语法就没法生效了。这时候不用慌,直接把带点符号的键名原封不动传进Arr::only()就行,它能正确识别并返回对应的键值对。

举个实际的例子:

use Illuminate\Support\Arr;

$array = [
    'name' => 'Desk',
    'model.small.price' => 100,
    'orders' => 10
];

$slice = Arr::only($array, ['name', 'model.small.price']); 
// 结果:['name' => 'Desk', 'model.small.price' => 100]

这里的关键是,当键名本身包含点时,直接传入完整的键名,Laravel的Arr::only()会把它当作一个普通的键来处理,而不会试图拆分它去查找多维数组的嵌套值。

内容的提问来源于stack exchange,提问作者DevonDahon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 12:07:48