PHP5 : 길이의 위치가 주어진 다차원 배열에 물건을 추가합니까?
-
06-07-2019 - |
문제
// 다음 배열이 제공 :
$data = array(
0=>array(
"data"=>"object1",
"col"=>array(
0=>array(
"data"=>"object2",
"col"=>array(
0=>array(
"data"=>"object3",
),
1=>array(
"data"=>"object4",
),
)
),
1=>array(
"data"=>"object5",
"col"=>array()
),
)
)
);
// 길이 (0), 배열 (1,0), 배열 (1,0,0) 등의 위치가 주어지면 새 개체를 추가하거나 기존 객체를 교체 할 수 있습니다.
$data = add($data, array(0,0,1), "new_object");
function add($data, $position, $object) {
// this has to be produced based the location:
$data[0]["col"][0]["col"][1]["data"] = "new_object";
return $data;
}
PHP에서 만들 수있는 제정신 방법이 있습니까? $data."[0]["col"][0]["col"][1]["data"]"
?
해결책
얽힌 배열보다 더 나은 데이터 구조가 있어야합니다. 대부분의 경우 6 차원이 너무 많습니다. 거기에 약간의 반복 구조가있는 것 같습니다. 아마도 당신은 그것을 활용할 수 있습니까? 당신이 말한 것처럼 "Sane"방법은 미친 배열에 접근 할 수 없습니다.
제휴하지 않습니다 StackOverflow