0

我有一个包含 SQL 查询数据的字符串,我尝试将其导出到文本文件。但我只想要列namedata,我不想要元数据。我使用了以下代码:

header('Content-type: application/txt');
header('Content-Disposition: attachment; filename="day2.txt"');
echo "$header\n$data";

输出如下所示。我怎样才能只得到里面的内容body?我不想要html标签。

<!DOCTYPE html>
<html>

    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>

    <body>"1340129" "2013-04-08" "true" "true"</body>

</html>
4

2 回答 2

0

据我了解,您问如何仅将正文中的内容从 html 文档中获取,以将其作为文本文件提供。

您可以为此使用以下代码段

<?php

$d = new DOMDocument;
$m = new DOMDocument;

// In case if you have an html document in a variable or so
$d->loadHTML('<html><head></head><body>123</body></html>');

// You could use it in case html or so document is a file resource  
#$d->loadHtml(file_get_contents('/path/to/desired/file.html'));

$b = $d->getElementsByTagName('body')->item(0);
foreach ($b->childNodes as $child) {
    $m->appendChild($m->importNode($child, true));
}

// $m->saveHTML(); will hold only 123 in this case
echo $m->saveHTML();

?>
于 2013-08-30T04:54:01.980 回答
0

您想删除所有 HTML 并仅获取内容,请使用以下内容

代替

echo "$header\n$data";

利用

echo strip_tags($header."\n".$data);

于 2013-08-30T04:54:45.947 回答