PHP Simple HTML DOM Parser

Parsear HTML en PHP

En la actualidad es muy común tener que manipular el HTML con Java Script y jQuery, pero también tenemos que saber que esta característica la podemos realizar en el servidor con PHP. Es por eso que en este tutorial aprenderemos a parsear HTML en PHP utilizando la librería PHP Simple HTML DOM Parser.

Entonces antes de comenzar a programar es necesario descargar la librería desde su sitio oficial: http://simplehtmldom.sourceforge.net.

¿Cómo parsear HTML en PHP?

Para realizar esta tarea simplemente necesitamos utilizar la función str_get_html de la siguiente manera:

<?php 

require('simple_html_dom.php');

// Creando un DOM desde un String
$html = str_get_html('<div id="hola">Hola</div><div id="mundo"></div>');

?>

Ahora si queremos parsear el HTML de un sitio o archivo tenemos que usar la función file_get_html:

<?php 

require('simple_html_dom.php');

// Creando un DOM desde una URL o archivo
$html = file_get_html('http://programacionextrema.com/');

?>

¿Cómo obtener tag HTML en PHP?

Con el siguiente código podemos obtener un tag (etiqueta) por id o índice y agregarle un texto o estilos:

<?php 

require('simple_html_dom.php');

// Creando un DOM desde un String
$html = str_get_html('<div id="hola">Hola</div><div id="mundo"></div>');

// Agregando estilos al segundo tag
$html->find('div', 1)->style = 'color: red;';

// Agregando un texto al tag de id mundo
$html->find('div[id=mundo]', 0)->innertext = 'Mundo!';

echo $html;

?>

Bueno gente esto es todo por hoy, espero que les sea de gran utilidad este tutorial para parsear HTML en PHP, si quieren saber más pueden leer la documentación oficial. Ante cualquier problema no dude en dejar un comentario.

Compartilo en
Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInPin on PinterestEmail this to someone

AboutJosé Di Meglio

Apasionado de la tecnología y programación. Aportando información gratuita sobre el mundo de la informática.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *