lecture du contenu XML dans une chaine de caractère
Forum Programmation : lecture du contenu XML dans une chaine de caractère
J'ai un peti problème avec la lecture d'une Chaîne de caractères $string qui contient du XML
j'ai fait $doc = new DOMDocument();
$doc->loadXML($string);
j'ai le message d'erreur Warning: domdocument:
omdocument() expects at least 1 parameter, 0 given
et Fatal error: Call to undefined method domdocument::loadXML()
si kelkun a une idée merci pour l'aide
Visiblement, tu a un problème avec ton $string, alors affiche le pour savoir ce qu'il y a dedans (je pense qu'il n'y a rien).
Ensuite, du code, tu ne montre pas l'initialisation de $string, alors je ne vois pas comment on peut t'aider
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
je veux faire un parsing d'un fichier XML que je recupère dans un URL
j'ai utilisé la librairie cURL pour
$string = '';
$url = "http://downloads.bbc.co.uk/podcasts/fivelive/mayo/rss.xml";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_PROXY, 'proxy:num_port');
//curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$string .= htmlentities(curl_exec($ch));
echo $string;
sa m'affiche correctement le contenu du fichier XML
Je veux donc extraire le contenu de ces données xml avec les méthode DOMDocument
merci
Ah non j'avais mal lu l'erreur.
Apparemment, il veut un paramètre à l'instanciation de DOMDocument.
Essaie avec $doc = new DOMDocument('1.0');
Sinon tu peux faire ceci (car loadXML est aussi une méthode de classe):
$doc = DOMDocument::loadXML($string);
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
j'ai essayé sa ossi sa mais sa marche pas
il me donne tjrs le meme message derreur
voici le mesage derreur que j'obtiens avec $doc = DOMDocument::loadXML($string);
Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Start tag expected, '<' not found in Entity, line: 1
et le second message est
Fatal error: Call to a member function getElementsByTagName() on a non-object
merci
j'ai poussé un peu plus j'ai fais $doc = new DOMDocument;
$doc->loadXML($string);
et j'obtiens le message d'erreur suivant
Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Empty string supplied as input
merci
ça marche, c'est juste que tu as une autre erreur.
C'est que ta chaine de caractère n'est pas correcte. En effet elle ne contient pas les caractères '<', '>' etc.
C'est parce que tu as utilisé htmlentities !
ça a remplacé tous les '<' en '<'. Du coup, le parsing XML ne trouve aucun élément.
Donc enlève le htmlentities.
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Sa marche maintenant sans le htmlentities.
Grand Merci
Il y a 1700 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
