如何用PHP的file_get_contents结合字符串截取提取Body指定内容
用PHP提取与标签间内容的方法
- 先用
file_get_contents()获取目标内容,本地文件路径或者远程URL都能直接用。 - 定位
<Body>和</body>标签的位置,再截取两者之间的文本。
代码示例
// 替换成你的目标文件路径或URL $content = file_get_contents('your_target.html'); // 定义要匹配的开始和结束标签 $start_tag = '<Body>'; $end_tag = '</body>'; // 计算开始截取的位置(跳过开始标签本身) $start_pos = strpos($content, $start_tag) + strlen($start_tag); // 找到结束标签的起始位置 $end_pos = strpos($content, $end_tag); // 截取并去除首尾空白字符 $body_text = trim(substr($content, $start_pos, $end_pos - $start_pos)); // 输出结果,这里就能得到你要的"Example"文本 echo $body_text;
注意事项
- 标签大小写要对应:如果目标内容里的开始标签是小写
<body>,要同步修改$start_tag的值,不然会匹配不到。 - 多结束标签处理:如果内容里有多个
</body>,strpos只会抓第一个,这时候可以改用strrpos定位最后一个结束标签的位置。 - 复杂HTML场景:如果目标HTML结构复杂(比如标签嵌套、注释干扰),字符串截取可能失效,建议用
DOMDocument来解析,但简单场景下字符串方法足够高效。
内容的提问来源于stack exchange,提问作者Absada Lum
相关产品推荐
相关产品推荐

