问题描述
我有这个对象数组,我想搜索所有键的字符串并返回匹配对象的所有数据。 不知道这个问题有没有重复。 希望你们能拯救我的一天。
下面的照片是我的代码。顺便说一句,我不使用 eloquent,数据来自调用 sql。
下面是我制作的用户界面。
解决方法
您想使用 laravel(eloquent) 中的 pluck
方法
就像这样:
$plucked = $paginatedItems->pluck('item_code','unit_measure');
$plucked->all();
见:https://laravel.com/docs/8.x/collections#method-pluck
,如果不查看您的代码,就很难确定哪种方法最好。但是,有几种方法可以做到这一点。下面是一些未经测试的例子。但请使用它们作为示例,因为有更简单、更好的方法来做到这一点。我只是想为您指明正确的方向。
$array = array_search([SEARCH TERM],array_keys([YOUR ARRAY]));
$results = [];
$array_keys = array_keys([YOUR ARRAY]);
for($i = 0; $i < count($array_keys); $i++) {
if($array_keys[$i] == "[SEARCH TERM]") {
$results[] = $[YOUR ARRAY][$i];
}
}
也试试:php search array key and get value
编辑:这是纯 PHP - 因为您使用的是 Laravel,所以肯定有更好的方法来做到这一点。请阅读 pluck