Xml en tableau php
Résolu
SRN
Messages postés
95
Date d'inscription
Statut
Membre
Dernière intervention
-
SRN Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
SRN Messages postés 95 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde,
j'aimerais conventir un fichier xml en tableau php, j'utilise php 4 et domxml si jamais
j'aimerais printer mes infos comme cela :
$a = array ('a' => 'pomme',
'b' => 'banane',
'c' => 'kiwi');
print_r ($a['c']);
le code du xml
<configuration>
<application>
<category_id>10</category_id>
<installer_name>7Zip.v4.42.msi</installer_name>
<name>7-Zip</name>
<version>4.42.0.0</version>
</application>
</configuration>
j'aimerais conventir un fichier xml en tableau php, j'utilise php 4 et domxml si jamais
j'aimerais printer mes infos comme cela :
$a = array ('a' => 'pomme',
'b' => 'banane',
'c' => 'kiwi');
print_r ($a['c']);
le code du xml
<configuration>
<application>
<category_id>10</category_id>
<installer_name>7Zip.v4.42.msi</installer_name>
<name>7-Zip</name>
<version>4.42.0.0</version>
</application>
</configuration>
A voir également:
- Xml en tableau php
- Tableau word - Guide
- Tableau ascii - Guide
- Xml download - Télécharger - Édition & Programmation
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
2 réponses
j'ai trouvé deux solutions à cela :
1) on utilise php 4 et on se fait chier à utiliser des get_elements_by_tagname('éléments')
if (!$dom = domxml_open_mem($xmlstr)) {
echo "Erreur pendant le parsage du document\n";
exit;
}
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('name');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('version');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('installer_remote_url');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('description');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
?>
2) on utilise php 5 et on utilise très facile et sans s'énerver SimpleXMLElement
<?php
//Pour php5
$url = 'http://www.toto.ch/logiciels/free/7-Zip/7-zip-multilanguage-4.42.0.0.xml';
//$url='exploration.xml';
$rss_file = file_get_contents($url);
$xml = new SimpleXMLElement($rss_file);
echo $xml->application[0]->name;
echo'<br>';
echo'<br>';
echo $xml->application[0]->version;
echo'<br>';
echo'<br>';
echo $xml->application[0]->installer_remote_url;
echo'<br>';
echo'<br>';
echo $xml->application[0]->description;
?>
voilà j'espère que ça pourra aider du monde
@++
1) on utilise php 4 et on se fait chier à utiliser des get_elements_by_tagname('éléments')
if (!$dom = domxml_open_mem($xmlstr)) {
echo "Erreur pendant le parsage du document\n";
exit;
}
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('name');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('version');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('installer_remote_url');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
print("<br>");
print("<br>");
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname('description');
foreach ($node_array as $node) {
echo $node->get_content() . "\n";
}
?>
2) on utilise php 5 et on utilise très facile et sans s'énerver SimpleXMLElement
<?php
//Pour php5
$url = 'http://www.toto.ch/logiciels/free/7-Zip/7-zip-multilanguage-4.42.0.0.xml';
//$url='exploration.xml';
$rss_file = file_get_contents($url);
$xml = new SimpleXMLElement($rss_file);
echo $xml->application[0]->name;
echo'<br>';
echo'<br>';
echo $xml->application[0]->version;
echo'<br>';
echo'<br>';
echo $xml->application[0]->installer_remote_url;
echo'<br>';
echo'<br>';
echo $xml->application[0]->description;
?>
voilà j'espère que ça pourra aider du monde
@++