Я ищу способ найти в моем файле XML конкретное значение для другого узла.Я ищу "Marque" и "ReferenceVehicule", и они должны содержать определенное значение.Работает хорошо и return и Array ().
<code>element_a_rechercher = mb_strtoupper($_GET["element"]);
$xml = simplexml_load_file('magento_flux_products.xml');
$rule1 = "//Stock/Vehicule/Marque[contains(., '$element_a_rechercher')]";
$rule2 = "//Stock/Vehicule/ReferenceVehicule[contains(., '$element_a_rechercher')]";
$found1 = $xml->xpath($rule1);
$found2 = $xml->xpath($rule2);
$result = array_merge($found1, $found2);
echo '<pre>'; print_r($result); echo '
';
Возвращенный массив выглядит следующим образом:
Array
(
[0] => SimpleXMLElement Object
(
[0] => DACIA
)
[1] => SimpleXMLElement Object
(
[0] => FIAT
)
[2] => SimpleXMLElement Object
(
[0] => FIAT
)
...
)
Как можно сделать так, чтобы для каждого «ГИБЛА» извлекались все остальные узлы, а не только тот, в котором был выполнен запрос.Большое спасибо.
РЕДАКТИРОВАТЬ: Я нашел способ именно то, что я искал:
$rule1 = "//Stock/Vehicule/Marque[contains(., '$element_a_rechercher')]/ancestor::Vehicule";