这就是我在 JavaScript 中从数组中检索项目的方法,它工作得很好:
function getLibItemByName(name){
var index = json.library.findIndex(p => p.name == name);
return json.library[index];
}
我的数组是这样的:
[
{
"name": "item1"
},
{
"name": "item2"
},
...
]
现在我想知道如何在 PHP 中做同样的事情?
更新:我想出了这个目前有效的
function getLibItemByName($name){
global $json;
foreach($json['library'] as $key => $val){
if($name === $val['name']){
return $json['library'][$key];
}
}
return false;
}
最佳答案
使用 array_search() 函数,它的工作原理如下:
array_search(what_to_search,array_variable,true/false);
FALSE 是默认参数。 如果此参数设置为 TRUE,则此函数将在数组中搜索相同的元素。 当设置为 true 时,数字 5 与字符串 5 不同。
这是给定的示例:
$a=array("a"=>"5","b"=>5,"c"=>"5");
echo array_search(5,$a,true);
如果在数组中找到某个值,则返回该值的键,否则返回 FALSE。如果在数组中多次找到该值,则返回第一个匹配的键。
关于javascript - 相当于 PHP 中的 JavaScript findIndex(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48866984/