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 é?
