我的数组看起来像这样,想法是用基于json文件中的数字的名称替换RiD。
Array
(
[gId] => Value
[mId] => Value
[GM] => Value
[GT] => Value
[GQ] => Value
[participants] => Array
(
[0] => Array
(
[tId] => Value
[sId1] => Value
[sId2] => Value
[tId] => Value
[pId] => Value
[SM] => Value
[R] => Array
(
[0] => Array
(
[c] => value
[RiD] => 5245
所以要做到这一点我有以下我使用foreach,array_map和array_filter,它使数组更大并改变它的结构。 所以它按预期工作,但无论如何都要进行优化吗?
$p_final = array();
foreach($array["participants"] as $key => $value){
$p = array();
$p["RiD"] = $value["RiD"];
$p["RiD"] = array_map(function($v) use($value, $rid_json) {
$value["static"] = array_filter($rid_json["data"], function($s) use($v) {
return $v["RiD"] == $s["id"];
}, ARRAY_FILTER_USE_BOTH);
return $value;
}, $value["RiD"]);
$p_final[$key] = $p;
}