PHP:HTML文档中两点之间的回显内容

时间:2012-01-26 19:03:46

标签: php

我发现此代码已经用于处理标记之间的内容

$content_processed = preg_replace_callback(  
'#\<pre\>(.+?)\<\/pre\>#s',   create_function(
    '$matches',
     'return "<pre>".htmlentities($matches[1])."</pre>";'   ),   $content );

但我怎么能得到它只是获取HTML的一部分。我正在看的那个位于;

click here</a></p><p><span class='title'>Soups<br />

并以

结束
 <div style='font-size:0.8em;'>

(我选择的部分非常长,因为它们在HTML中是独一无二的。)

1 个答案:

答案 0 :(得分:0)

不要用正则表达式解析html。糟糕,糟糕的主意。更好地使用XML解析器使其成为嵌套对象/数组。那样你就会更加安全。

但是,如果你只在你的网页上使用静态代码(EG代码永远不会改变),你可以在该分隔符上爆炸,将页面分成两半,然后再次爆炸

示例:

$html = file_get_contents('path/to/page.phtml');
$text = explode('click here</a></p><p><span class=\'title\'>Soups<br />', $html);
$text = explode('<div style='font-size:0.8em;'>', $text[1]);
$text = $text[0];
echo $text;