Я использую simplexml_load_file
для загрузки xml и импорта товаров в дБ. Однако в моем случае есть несоответствие тому, как функция simple_load_file работает в другой среде. Например, если я запускаю следующий код:
$xmlPath = __DIR__.'/../files/xml/data.xml';
$xmlElements = simplexml_load_file($xmlPath);
foreach ($xmlElements->bien as $element) {
var_dump($element);
}
Проблема в том, что свойства для $element
могут отличаться на моем локальном компьютере и сервере разработки. Пожалуйста, проверьте скриншот на выводе $ element .
Вывод для моего локального файла выглядит следующим образом:
public 'type_diffusion' =>
object(SimpleXMLElement)[6]
public 'code' => string 'FERME' (length=5)
public 'designation' =>
array (size=3)
0 => string 'Fermé au réseau ' (length=18)
1 => string 'Closed to the network ' (length=22)
2 => string 'Im Netzwerk nicht verfügbar ' (length=29)
А на сервере разработки это выглядит следующим образом:
["type_diffusion"]=>
object(SimpleXMLElement)#6 (2) {
["code"]=>
string(5) "FERME"
["designation"]=>
array(3) {
[0]=>
object(SimpleXMLElement)#41 (2) {
["@attributes"]=>
array(1) {
["lang"]=>
string(2) "fr"
}
[0]=>
string(18) "Fermé au réseau "
}
[1]=>
object(SimpleXMLElement)#42 (2) {
["@attributes"]=>
array(1) {
["lang"]=>
string(2) "en"
}
[0]=>
string(22) "Closed to the network "
}
[2]=>
object(SimpleXMLElement)#43 (2) {
["@attributes"]=>
array(1) {
["lang"]=>
string(2) "de"
}
[0]=>
string(29) "Im Netzwerk nicht verfügbar "
}
}
}
Часть xml имеет вид следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<Agence>
<date>27.04.2020 16:23:42</date>
<bien>
<introducteur>oui</introducteur>
<type_diffusion>
<code>FERME</code>
<designation lang="fr">Fermé au réseau </designation>
<designation lang="en">Closed to the network </designation>
<designation lang="de">Im Netzwerk nicht verfügbar </designation>
</type_diffusion>
</bien>
</Agence>
На моем локальном компьютере свойство type_diffusion -> designation
является массивом, и все его элементы являются строками в моей локальной системе. Но на моем сервере разработки элементы внутри массива type_diffusion -> designation
имеют тип SimpleXMLElement
.
Я проверил документацию на simplexml_load_file
, но не смог найти ничего полезного. У вас, ребята, такая же проблема? Как вы решаете его несоответствия между средами?
Большое спасибо!