#php #arrays #laravel #foreach
Вопрос:
У меня есть такой массив, в идеале нужно вернуть массив как Сестру1 с [братьями и сестрами] => Массив( [id] Сестра2, [id] Сестра3)
концепция заключается в том, чтобы строить отношения между сестрами всякий раз, когда я нажимаю sister1, это показывает, что sister2 и sister3 связаны, и когда я нажимаю sister3, sister1 и sister2 будут отображаться как братья и сестры.
Array
(
[tree] => Array
(
[id] => 118
[uid] => P7Zsx6a9rvfErRdw
[firstName] => Sister1
[lastName] => Mouse
[dob] => 01/06/2021
[biological] => 0
[deceased] => 0
[relationship] => self
[gender] => female
[rating] => 0
[peers] => Array
(
)
[children] => Array
(
)
[siblings] => Array
(
[0] => stdClass Object
(
[id] => 15
[uid] => ivnqKmez4veKhjV
[firstName] => Sister2
[lastName] => Mouse
[dob] => 02/06/2004
[biological] => 1
[deceased] =>
[maritalStatus] =>
[relationship] => sister
[relationshipStatus] => 1
[gender] => female
[rating] => 2
[marriedToId] =>
[caregiver] =>
[whangai] =>
[for] => 118
[siblings] => Array
(
[0] => stdClass Object
(
[id] => 19
[uid] => GQEESONv9Ff7FjJ0
[firstName] => Sister3
[lastName] => Mouse
[dob] => 12/06/2007
[biological] => 1
[deceased] =>
[maritalStatus] =>
[relationship] => sister
[relationshipStatus] => 1
[gender] => female
[rating] => 0
[marriedToId] =>
[caregiver] =>
[whangai] =>
[for] => 15
)
[1] => stdClass Object
(
[id] => 118
[uid] => P7Zsx6a9rvfErRdw
[firstName] => Sister1
[lastName] => Mouse
[dob] => 01/06/2021
[biological] => 1
[deceased] =>
[maritalStatus] =>
[relationship] => sister
[relationshipStatus] => 1
[gender] => female
[rating] => 0
[marriedToId] =>
[caregiver] =>
[whangai] =>
[for] => 15
Я попытался объединить массив, но это не сработало, я провел целый день в поисках ответа, но ничего не вышло. Вот код.
foreach ($tree['siblings'] as $i => $sibling) {
$tree['siblings'][$i]->siblings = $this->getRelationshipData($sibling->id, $region_id, $sibling_ids, $member->getKey());
$merge = array_merge($i, $tree);
foreach ($sibling->siblings as $j => $p) {
$tree['siblings'][$i]->siblings[$j]->relationship = $p->relationship;
}
return $tree;
}
Ожидаемый выход в идеале должен заключаться в том, чтобы вернуть массив как Сестру1 с
`[tree]=> Array
(
[id] => 118
[firstName] => Sister1
.
.
.
[siblings] => Array(
[id]=> 15
[firstName]=> Sister2
.
.
.
[id]=>19
[firstName]=> Sister3)`
Комментарии:
1. также укажите ожидаемый выходной результат для упомянутого массива .так что это поможет некоторым лучше подумать