Как получить данные дочернего массива в родительском массиве в php, mysql

Ниже мой массив, но я хочу, чтобы дочерние данные в родительском, а также

[16363] => Array
(
[15] => Array
(
[account_id] => 19321
[aum] => 104853.92
[cl_user_id] => 16363
[text] => MICHAEL ANDRISANO INDIVIDUAL
[fname] => MICHAEL
[lname] => ANDRISANO
[account_number] => 906566540
)

[16] => Array
(
[account_id] => 19322
[aum] => 196539.78
[cl_user_id] => 16363
[text] => MICHAEL ANDRISANO INDIVIDUAL
[fname] => MICHAEL
[lname] => ANDRISANO
[account_number] => 906566600
)

)

Я хочу вывод, как показано ниже

 [16363] => Array
(
[text] => MICHAEL ANDRISANO
[cl_id] => 16363
[nodes] => Array
(
[0] => Array
(
[account_id] => 19321
[aum] => 104853.92
[cl_user_id] => 16363
[text] => MICHAEL ANDRISANO INDIVIDUAL
[fname] => MICHAEL
[lname] => ANDRISANO
[account_number] => 906566540
)

[1] => Array
(
[cl_id] => 16363
[account_id] => 19322
[aum] => 196539.78
[text] => MICHAEL ANDRISANO INDIVIDUAL (906566600)
[account_number] => 906566600

)
)

)

-1

Решение

Я не знаю ни одного из ваших имен переменных, но допустим, ваш исходный массив был назван $parentи вы хотите, чтобы это было проанализировано в $clients,

Просто просматривайте каждую запись в $parent, а затем переберите дочерние массивы и соберите все вместе в новом массиве. Ниже приведен пример того, как вы могли бы сделать это. Ожидаемый результат в вашем вопросе имеет разное количество ключей для разных [node] элементы, так что я не уверен, что именно вы хотите достичь, но, надеюсь, это поможет вам начать.

<?php
//This is what will be our final array (your expected output)
$clients = array();

foreach ($parent as $key=>$children)
{
// Build the initial $clients meta data.
$clients[$key] = array (
// It seems the following data is identical, so we'll just grab from the first child
'text' => $children[key($children)]['fname'] . ' ' . $children[key($children)]['lname'],
'cl_id' => $children[key($children)]['cl_user_id'],
'nodes' => array()
);

// Now populate the nodes
foreach ($children AS $child)
{
$clients[$key]['nodes'][] = array (
'account_id' => $child['account_id'],
'cl_id' => $child['cl_id'],
'aum' => $child['aum'],
'text' => $child['text'],
'account_number' => $child['account_number']
);
}
}
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector