2011-02-04 3 views
0

Voici mon code html:Modifier un attribut HTML: xml: lang

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 

Je souhaite modifier l'attribut de xml:lang="en" dans xml:lang="Foobar" et la prochaine lang="en" dans xml:lang="Foobar"

Est-ce que ce travail d'analyse syntaxique? Simple HTML DOM Parser Comme je l'ai lu la documentation, il devrait va comme ceci:

$html = file_get_html('D:\xampp\htdocs\hmtl\index.html'); 
$value = $html->lang; 
$html->href = 'Foobar'; 

Mais, cela ne fonctionne pas. Qu'est-ce qui me manque ici? S'il vous plaît aider.

Répondre

1

file_get_contents() ne génère pas de DOM HTML. Il lit simplement le fichier en texte brut. Par conséquent, avant d'utiliser $html->lang ou $html->href, vous devez convertir le texte brut en une structure d'objet DOM. Comme décrit dans le lien que vous avez fourni, vous devez utiliser la fonction str_get_html(), entre file_get_contents() et essayer d'utiliser l'objet DOM.

Alternativement, la même page répertorie également une manière entièrement orientée objet pour le faire:

$html = new simple_html_dom(); 
$html->load_file('test.htm'); 

... où vous remplacerez évidemment test.htm avec votre chemin de fichier.

+0

il y a eu une erreur dans ma question, ce n'est pas file_get_contents() c'est file_get_html(); fini d'éditer la question .. – woninana

+0

Je ne travaille toujours pas ..... @Spudley – woninana

Questions connexes