AJBFerreira

Extrair contéudo entre tags

Por vezes, num dado documento, precisamos de extrair o conteúdo que está entre duas tags HTML. Eis uma função PHP simples para esse efeito:

function getElem($string,$start,$end) {
	// Para obter o conteúdo entre 2 tags
	// SINTAXE: getElem(conteúdoaextrair, tagabertura, tagfecho)
	$string = ' '.$string;
	$ini = strpos($string,$start);
	if( $ini==0 )
		{ return ''; }
	$ini += strlen($start);
	$len = strpos($string,$end,$ini) - $ini;
	return substr($string,$ini,$len);
}

Imagine então, como exemplo, que pretendemos extrair um texto que se encontra entre tags span. O código PHP seria então:

$myHtml = '<span>Isto é um exemplo apenas num documento HTML</span>';
$myTxt = getElem($myHtml,'<span>','</span>');
echo $myTxt;

E assim obteríamos – via função echo() – apenas o texto “Isto é um exemplo apenas num documento HTML” isolado das tags que o envolvem. Como exercício prático, tente extrair o conteúdo entre as tags body de uma página web…

Simples, não é?

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *