我想只从php字符串中提取文本.
这个php字符串包含html代码,如标签等.
所以我只需要这个字符串中的简单文本.
这是实际的字符串:
<div class="devblog-index-content battlelog-wordpress">
<p><strong>The celebration of the Recon class in our second </strong><a href="http://blogs.battlefield.com/2014/10/bf4-class-week-recon/" target="_blank">BF4 Class Week</a><strong> continues with a sneaky stroll down memory lane. Learn more about how the Recon has changed in appearance, name and weaponry over the years…</strong></p>
<p> </p>
<p style="text-align:center"><a href="http://eaassets-a.akamaihd.net/battlelog/prod/954660ddbe53df808c23a0ba948e7971/en_US/blog/wp-content/uploads/2014/10/bf4-history-of-recon-1.jpg?v=1412871863.37"><img alt="bf4-history-of-recon-1" class="aligncenter" src="http://eaassets-a.akamaihd.net/battlelog/prod/954660ddbe53df808c23a0ba948e7971/en_US/blog/wp-content/uploads/2014/10/bf4-history-of-recon-1.jpg?v=1412871863.37" style="width:619px" /></a></p>
Run Code Online (Sandbox Code Playgroud)
我想从字符串中显示:
The celebration of the Recon class in our second BF4 Class Week continues with a sneaky stroll down memory lane. Learn more about how the Recon has changed in appearance, name and weaponry over the years…
Run Code Online (Sandbox Code Playgroud)
实际上这个文本将放在元描述标签中,所以我不需要元标记中的任何HTML.我怎么能这样做?关于这种技术的任何想法和想法?
Mil*_*Roo 42
你可以尝试:
echo(strip_tags($your_string));
Run Code Online (Sandbox Code Playgroud)
更多信息:http://php.net/manual/en/function.strip-tags.php
另一种选择是使用 Html2Text。它将比 strip_tags 做得更好,尤其是当您想解析复杂的 HTML 代码时。
从 HTML 中提取文本很棘手,因此最好的办法是使用为此目的构建的库。
https://github.com/mtibben/html2text
使用 Composer 安装:
composer require html2text/html2text
Run Code Online (Sandbox Code Playgroud)
基本用法:
$html = new \Html2Text\Html2Text('Hello, "<b>world</b>"');
echo $html->getText(); // Hello, "WORLD"
Run Code Online (Sandbox Code Playgroud)