getElementById si getElementsByTagName sunt metode ale clasei PHP DOMDocument . Aceste metode pot fi utilizate in PHP pentru a lucra cu elemente /tag-uri HTML.
- Inainte de a utiliza metodele clasei PHP DOMDocument, trebuie sa incarcati documentul HTML intr-un obiect DOMDocument, precum in acest cod:
// creaza obiectul DOMDocument $dochtml = new DOMDocument(); // incarca continutul dintr-o pagina (sau fisier) HTML $dochtml->loadHTMLFile('filename.html'); // SAU, incarca elementele HTML stocate intr-un sir $strhtml = '<html><body>Tag-uri si continut.<br></body></html>'; $dochtml->loadHTML($strhtml);
Pentru a traversa un obiect PHP, se foloseste instructiunea foreach().
<?php $strhtml = '<!doctype html> <html> <head> <meta charset="utf-8" /> <title>PHP getElementById, getElementsByTagName</title> </head> <body> <div id="dv1">www.MarPlo.net</div> </body></html>'; // creaza obiectul DOMDocument si incarca HTML dintr-un sir $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); // preia elementul cu id="dv1" $elm = $dochtml->getElementById('dv1'); // preia numele tag-ului si continutul $tag = $elm->tagName; $cnt = $elm->nodeValue; echo $tag. ' - '. $cnt; // div - www.MarPlo.net ?>
<?php $strhtml = '<!doctype html> <html> <head> <meta charset="utf-8" /> <title>PHP getElementById, getElementsByTagName</title> </head> <body> <div id="cweb">www.CoursesWeb.net</div> <p>Curs gratuit PHP</p> <div id="mp">www.MarPlo.net</div> </body></html>'; // creaza obiectul DOMDocument si incarca HTML dintr-un sir $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); // preia toate DIV-urile $divs = $dochtml->getElementsByTagName('div'); // parcurge obiectul cu toate DIV-urile foreach($divs as $div) { // preia si afiseaza ID-ul si continutul fiecarui DIV $id = $div->getAttribute('id'); $cnt = $div->nodeValue; echo $id. ' - '. $cnt. '<br/>'; } ?>
<?php $strhtml = '<body> <p class="cls">Curs gratuit PHP</p> <p class="cls">URL: http://www.coursesweb.net</p> <p>Paragraph without class.</p> <div>www.MarPlo.net</div> <p class="cls">PHP getElementById si getElementsByTagName</p> </body>'; // creaza obiectul DOMDocument si incarca HTML dintr-un sir $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); // preia toate tag-urile <p> $prgs = $dochtml->getElementsByTagName('p'); $pcls = array(); // parcurge obiectul cu toate paragrafele foreach($prgs as $prg) { // daca paragraful curent are class="cls", il adauga in array-ul $pcls if($prg->getAttribute('class') == 'cls') { $pcls[] = $prg->nodeValue; } } // afiseaza array-ul $pcls print_r($pcls); // Array ([0] => Curs gratuit PHP [1] => URL: http://www.coursesweb.net [2] => PHP getElementById si getElementsByTagName ) ?>
<ul> <li>http://coursesweb.net/html/</li> <li>http://www.marplo.net/html/</li> </ul>
.some_class { display: list-item; }
var obj = { "courses": ["php", "javascript", "ajax"] }; var jsonstr = JSON.stringify(obj); alert(jsonstr); // {"courses":["php","javascript","ajax"]}
$strhtml = '<body><div id="dv1">CoursesWeb.net</div></body>'; $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); $elm = $dochtml->getElementById("dv1"); echo $elm->nodeValue; // CoursesWeb.net
I`m living here. - Traiesc /Locuiesc aici.
Estoy viviendo aquĆ. - Traiesc /Locuiesc aici.