Из-за чего массив в переменной меняется с определенного момента?
Уважаемые эксперты!
Разбираю хардкод, бьюсь и не могу понять один момент. Вначале кода результаты условий складываются в массив $history_fns. Если внутри первых двух foreach выводить (вардампом) $history_fns, то данные появляются в правильном порядке. Во второй части кода (ниже черты) вывод $history_fns приводит уже к другим результатам - данные следуют в обратном порядке. Почему это происходит? Вторая часть кода отвечает за вывод информации "на фронт", из-за пертурбаций с $history_fns она представляется в неправильном порядке..
$history_fns = [];
$xq = 0;
/* $history_fns['Совладельцы'][$value1[grn_date]][delete][$xq] */
foreach ($history_egrul[data] as $key => $value) {
foreach ($value[changes] as $key1=> $value1) {
if($value1[title][value]=='uchr_dol' || $value1[title][value]=='uchr') {
$history_fns['Совладельцы'][$value1[grn_date]][delete][$xq] = $value1[val_old];
$history_fns['Совладельцы'][$value1[grn_date]][add][$xq] = $value1[val_new];
}
if($value1[title][value]=='ruk') {
$history_fns['Руководитель'][$value1[grn_date]][delete][$xq] = $value1[val_old];
/* var_dump($history_fns['Руководитель'][$value1[grn_date]][delete][$xq]); */
$history_fns['Руководитель'][$value1[grn_date]][add][$xq] = $value1[val_new];
}
if($value1[title][value]=='addr') {
$history_fns['Адрес'][$value1[grn_date]][delete][$xq] = $value1[val_old];
$history_fns['Адрес'][$value1[grn_date]][add][$xq] = $value1[val_new];
}
if($value1[title][value]=='okved') {
$history_fns['Основной вид деятельности'][$value1[grn_date]][delete][$xq] = $value1[val_old];
$history_fns['Основной вид деятельности'][$value1[grn_date]][add][$xq] = $value1[val_new];
}
if($value1[title][value]=='uchr_inn') {
$history_fns['ИНН совладельцев'][$value1[grn_date]][delete][$xq] = $value1[val_old];
$history_fns['ИНН совладельцев'][$value1[grn_date]][add][$xq] = $value1[val_new];
}
if($value1[title][value]=='Usumma') {
if($value1[val_old][0][value]!=0) {$history_fns['Доля организации'][$value1[grn_date]][delete][$xq] = $value1[val_old]; }
if($value1[val_new][0][value]!=0) { $history_fns['Доля организации'][$value1[grn_date]][add][$xq] = $value1[val_new]; }
}
$xq++;
// echo "<br><br>";
}
} // print_r($history_egrul);
// print_r($history_egrul);
if($history_fns) { var_dump($history_fns);
?>
<div class="egrul-content-tab <?=$fns_class?>" id="egrul-tab-content-1">
<div class="table">
<div class="table-body fns">
<?php $t = 0; $hide = ''; foreach ($history_fns as $key => $value) {
$t++; if($t>3) {$hide = ' style="display:none;"'; $show_button = 1;}
?>
<div class="table-row" <?=$hide?>>
<div class="title">
<h3><?=$key?></h3>
</div>
<?php foreach ($value as $key1 => $value1) { ?>
<div class="table-row-inner">
<div class="table-col date">
<span><?=date("d.m.Y", strtotime($key1));?></span>
</div>