尝试使用php文档获取纯文本

尝试使用php文档获取纯文本,php,html,domdocument,Php,Html,Domdocument,我试图从给定的html中获取明文。但是,这对我来说是不可能的。 为此,我所做的是 我的html在$content变量中 现在,我将$content变量传递给php DomDocuemnt $d = new DOMDocument(); @$d->loadHTML($content) 我的下一步是从获得的html中获取纯文本 请帮我做这件事。提前谢谢 我无法理解您的问题,但是如果您希望HTML代码作为字符串,那么 试试这个 $d = new DOMDocument(); $d->lo

我试图从给定的html中获取明文。但是,这对我来说是不可能的。 为此,我所做的是

我的html在
$content
变量中

现在,我将$content变量传递给php DomDocuemnt

$d = new DOMDocument();
@$d->loadHTML($content)
我的下一步是从获得的html中获取纯文本


请帮我做这件事。提前谢谢

我无法理解您的问题,但是如果您希望HTML代码作为字符串,那么 试试这个

$d = new DOMDocument();
$d->loadHTML($content);
$plainText = $d->textContent;
echo $plainText;

DOM本身没有这样的功能。不过,您可以使用该函数。像这样:

$d = new DOMDocument();
$d->loadHTML($content);
$plainText = strip_tags($d->textContent);
echo $plainText;

// which is probably equivalent to:
$plainText = strip_tags($content);
注意:使用DOMDocument()可以测试
$content
是否正确,或者您是否想要获取特定的标记(
$main=$d->getElementByName(“”);$plainText=strip_标记($main[0]->textContent)
),否则直接使用
strip_标记(
就足够了

存在一些问题,因为
strip\u tags()
函数不知道要删除的标记的类型。这意味着一个序列,例如:

... word</p><p>more ...
这是一个困难的问题,因为一些标签预计会以这种方式删除,而另一些则不会。例如,如果用户有某种强调形式,则删除标记的正确方法是不使用空格:

che<u>val<u>   -> cheval
che<u>veaux<u> -> cheveaux
cheval->cheval
切沃->切沃
(法语中“马”的单数和复数)


浏览器也没有线索,CSS是判断标记是块(
)还是内联(
)。

纯文本?只要使用
echo strip_标签($d)条带标记用于删除特定标记。但是,我需要删除html中的所有标记。你能提供给我你阅读的文档链接吗?除非你指定不删除哪些标记,否则条带标记将删除所有标记。你的链接上甚至写着“文本内容”包括标签。他想要“纯”文本,即没有标签的文本。(即相当于
jQuery().text()
che<u>val<u>   -> cheval
che<u>veaux<u> -> cheveaux