Задать вопрос
@Gordeich_00

Перебирая SimpleXML файл как многомерный массив, он выдает только первый массив останавливаясь на нем?

Перебираю массив Информчасть и он выдает информацию только о первом Раздел2, хотя их там 4

$xml = simplexml_load_file($_FILES['import_file']['tmp_name']);
$xml = $xml->ИнформЧасть;
$success = true;

foreach ($xml as $value) {
$value1 = $value->Раздел2;
if ($value == $value1 ) {

$lastname = $value->Раздел2->Участник->СведФЛИП->ФИОФЛИП->Фам;
$firstname = $value->Раздел2->Участник->СведФЛИП->ФИОФЛИП->Имя;
$patronymic = $value->Раздел2->Участник->СведФЛИП->ФИОФЛИП->Отч;

$fio = "$lastname $firstname $patronymic";

$passport_serial = json_decode($value->Раздел2->Участник->СведФЛИП->СведДокУдЛичн->СерияДок[0]);
$passport_number = json_decode($value->Раздел2->Участник->СведФЛИП->СведДокУдЛичн->НомДок[0]);
$birth = ($value->Раздел2->Участник->СведФЛИП->ДатаРождения);
$birth = str_replace('/', '-', (string)$birth);
$birth = date('Y-m-d', strtotime($birth));

$person =
[
'fio' => $fio,
'birth' => $birth,
'inn' => json_decode($value->Раздел2->Участник->СведФЛИП->ИИНФЛИП),
'passport_serial' => (string)$passport_serial,
'passport_number' => (string)$passport_number
];

echo "";
var_dump($person);
exit();

Выдает только первый массив
array(5) {
["fio"]=>
string(46) "Исраилов Арсен Расулович"
["birth"]=>
string(10) "1983-09-18"
["inn"]=>
NULL
["passport_serial"]=>
string(4) "8203"
["passport_number"]=>
string(6) "756283"
}

Сам файл выглядит так

<ИнформЧасть>
<ТипОрганизация>НФОТипОрганизация>
<Раздел2>
<НомерЗаписи>2022_190_02_000000000000E7B9НомерЗаписи>
<ФорматЗаписи>4937-РЈ_2.0ФорматЗаписи>
<ТипЗаписи>1ТипЗаписи>
<СведОперация>
<ПризнакИнф>1ПризнакИнф>
<КодОтказа>08КодОтказа>
<КодПричинаОтказ>0000КодПричинаОтказ>
<ДатаОтказа>20/05/2022ДатаОтказа>
<ОснованиеОп>
<КодДок>99КодДок>
<НаимДок>ИноеНаимДок>
<ИноеНаимДок>Заявка на выдачу займа В11484901 от 20.05.2022 22:22:55ИноеНаимДок>
<ДатаДок>20/05/2022ДатаДок>
<НомДок>В11484901НомДок>
ОснованиеОп>
<КодПризнОперации>0КодПризнОперации>
<КодДенежСредств>1КодДенежСредств>
<ПризнНеобОперации>2290ПризнНеобОперации>
СведОперация>
<Участник>
<СтатусУчастника>2СтатусУчастника>
<ТипУчастника>2ТипУчастника>
<ПризнУчастника>1ПризнУчастника>
<СведФЛИП>
<ФИОФЛИП>
<Фам>ИсраиловФам>
<Имя>АрсенИмя>
<Отч>РасуловичОтч>
ФИОФЛИП>
<ИННФЛИП>ИННФЛИП>
<СведДокУдЛичн>
<ВидДокКод>21ВидДокКод>
<ВидДокНаименование>Паспорт гражданина Российской ФедерацииВидДокНаименование>
<СерияДок>8203СерияДок>
<НомДок>756283НомДок>
<ДатВыдачиДок>08/10/2003ДатВыдачиДок>
<КемВыданДок>ОВД ХАСАВЮРТОВСКОГО РАЙОНА РЕСП. ДАГЕСТАНКемВыданДок>
<КодПодр>052-011КодПодр>
СведДокУдЛичн>
<ДатаРождения>18/09/1983ДатаРождения>
<КодОКСМ>643КодОКСМ>
<СтранаНаименование>СтранаНаименование>
<ПризнакПубЛицо>0ПризнакПубЛицо>
СведФЛИП>
Участник>
Раздел2>
<Раздел2>
<НомерЗаписи>2022_080_02_000000000000F2CBНомерЗаписи>
<ФорматЗаписи>4937-РЈ_2.0ФорматЗаписи>
<ТипЗаписи>1ТипЗаписи>
<СведОперация>
<ПризнакИнф>0ПризнакИнф>
<КодОтказа>08КодОтказа>
<КодПричинаОтказ>0000КодПричинаОтказ>
<ДатаОтказа>25/05/2022ДатаОтказа>
<ОснованиеОп>
<КодДок>99КодДок>
<НаимДок>ИноеНаимДок>
<ИноеНаимДок>Уведомление об отказеИноеНаимДок>
<ДатаДок>25/05/2022ДатаДок>
<НомДок>05251238НомДок>
ОснованиеОп>
<КодПризнОперации>1КодПризнОперации>
<ПризнНеобОперации>3701ПризнНеобОперации>
СведОперация>
<Участник>
<СтатусУчастника>1СтатусУчастника>
<ТипУчастника>2ТипУчастника>
<ПризнУчастника>1ПризнУчастника>
<СведФЛИП>
<ФИОФЛИП>
<Фам>ЧумакФам>
<Имя>МарияИмя>
<Отч>ВалентиновнаОтч>
ФИОФЛИП>
<ИННФЛИП>ИННФЛИП>
<СведДокУдЛичн>
<ВидДокКод>21ВидДокКод>
<ВидДокНаименование>Паспорт гражданина Российской ФедерацииВидДокНаименование>
<СерияДок>6005СерияДок>
<НомДок>661247НомДок>
<ДатВыдачиДок>16/06/2006ДатВыдачиДок>
<КемВыданДок>ВТОРОЙ ОТДЕЛ МИЛИЦИИ УВД Г. ШАХТЫ РОСТОВСКОЙ ОБЛ.КемВыданДок>
<КодПодр>612-007КодПодр>
СведДокУдЛичн>
<ДатаРождения>16/10/1983ДатаРождения>
<КодОКСМ>643КодОКСМ>
<СтранаНаименование>СтранаНаименование>
<ПризнакПубЛицо>0ПризнакПубЛицо>
СведФЛИП>
Участник>
Раздел2>
  • Вопрос задан
  • 34 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
toxa82
@toxa82
Непонятно где у вас форич заканчивается это раз. Два, вы постоянно перезаписываете переменную $person. Три, у вас эксит после вардампа. Четыре непонятно что с условием в цикле, может там одно значение из всего файла только проходит его.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽