Hey everybody thanks for your time, I'm trying to parse a big XML file (pic bellow) and to get the text of specific nodes using XPATH expression in PHP.
Here is my php :
<?php
echo "[Generation Starts !]
";
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
if (file_exists('../source/particuliers/arborescence.xml')) {
$xml = new SimpleXMLElement(file_get_contents('../source/particuliers/arborescence.xml'));
$xml->registerXPathNamespace('dc', 'http://purl.org/dc/elements/1.1/');
$themes = $xml->xpath("/Arborescence/Item[@type='Theme']/Titre/text()");
var_dump($themes);
$JSON = json_encode($themes, JSON_UNESCAPED_UNICODE);
file_put_contents('testing.json', $JSON);
echo "[Generation Done !]
";
} else {
echo "File wasn't found
";
}
I won't put the whole XML file here as it is way too big but here is a pic so you see the structure
Using this XPATH expression /Arborescence/Item[@type='Theme']/Titre/text()
I expected to get text from my nodes but I only have an empty array with the right number of elements in it but all empty.
Anything I'm doing wrong ?