У меня возникают проблемы с сохранением некоторых данных после использования PHP-функции simplexml_load_file. Я хочу пройти через объект SimpleXML и, если данные соответствуют требованиям, я хочу поместить их в массив. Проблема в том, что я не могу получить значение полей, кажется, что он всегда пропускает весь объект, если это имеет смысл.
Вот мой код
echo $allProducts->product[1]->sku."<br/>";
echo $allProducts->product[1]->title."<br/>";
echo $allProducts->product[1]->price."<br/>";
$products["041132"]['sku'] = $allProducts->product[1]->sku;
$products["041132"]['title'] = $allProducts->product[1]->title;
$products["041132"]['price'] = $allProducts->product[1]->price;
print_r($products);
И мой вывод:
041132
Audrey Dining Chair
195.00
Array ( [041132] => Array (
[sku] => SimpleXMLElement Object ( [0] => 041132 )
[title] => SimpleXMLElement Object ( [0] => Audrey Dining Chair )
[price] => SimpleXMLElement Object ( [0] => 195.00 ) )
)
Все, что я хочу сохранить, - это фактическое значение. Как мне это сделать?
Для справки вот пример моего XML:
<products>
<product>
<sku>934896</sku>
<title>Savannah Barstool</title>
<price>475.00</price>
</product>
<product>
<sku>041132</sku>
<title>Audrey Dining Chair</title>
<price>195.00</price>
</product>
</products>