Come scegliere un parser HTML per PHP, free & open source

Come scegliere un parser HTML per PHP, free & open source

Se state programmando in PHP vi potrebbe capitare la necessità di prelevare soltanto alcuni tag da una pagina predefinita, oppure riportare la stessa per intero in formato testuale e simili. Senza pensare minimamente di farvi ammazzare a cercare la corretta espressione regolare da applicare in questi casi, il parser open-source PHP Simple HTML DOM Parser fa esattamente quello che vi serve.

Di seguito alcuni esempi di uso e l’indirizzo web da cui scaricare la libreria.

Acquista l’ hosting di qualità MySQL PHP : HostMonster

Si tratta quindi di un prodotto che permette di manipolare codice HTML in modo molto semplice, sulla falsariga degli esempi pronti all’uso che riporto di seguito (prelevati dal sito):
  • // preleva direttamente il codice HTML, pronto ad essere “trattato”
    $html = file_get_html(‘http://www.google.com/’)
  • // tutte le immagini con un semplice ciclo basato su una condizione sul DOM
    foreach($html->find(‘img’) as $element)
    echo $element->src . ‘<br>’;
  • // tutti i link, come sopra
    foreach($html->find(‘a’) as $element)
    echo $element->href . ‘<br>’;
  • //manipola il DOM inserendo un contenuto per un tag al post di un altro
    $html = str_get_html(‘<div id=”hello”>Hello</div><div id=”world”>World</div>’);
    $html->find(‘div’, 1)->class = ‘bar’;
    $html->find(‘div[id=hello]’, 0)->innertext = ‘foo’;
    echo $html; // Output: <div id=”hello”>foo</div><div id=”world” class=”bar”>World</div>
  • //permette di prelevare il codice HTML dalla pagina come testo semplice
  • echo file_get_html(‘http://www.google.com/’)->plaintext;
  • // crea DOM dall’URL
    $html = file_get_html(‘http://slashdot.org/’);
    // trova tutti i blocchi identificati dalla classe di un DIV e li stampa in output
    foreach($html->find(‘div.article’) as $article) {
    $item[‘title’]     = $article->find(‘div.title’, 0)->plaintext;
    $item[‘intro’]    = $article->find(‘div.intro’, 0)->plaintext;
    $item[‘details’] = $article->find(‘div.details’, 0)->plaintext;
    $articles[] = $item;
    }
    print_r($articles);
Ti piace questo articolo?

0 voti

Su Trovalost.it puntiamo sulla qualità dei contenuti da quando siamo nati: la tua sincera valutazione può aiutarci a migliorare ogni giorno.

Ti potrebbero interessare (News):

Cerca altro nel sito

Clicca sul box, e scegli la sezione per vederne i contenuti.