我正在尝试获取文件的内容并预览前50个单词(不包括标题),但遇到了一个障碍。
$getPage = $_SERVER['QUERY_STRING'];
$page = "news/" . $getPage . ".php";
$directory = 'news/';
$scanned_directory = array_diff(scandir($directory, 1), array('..', '.'));
if (file_exists($page)) {
include $page;
} else {
foreach ($scanned_directory as $value) {
$file = file_get_contents('news/' . $value);
$less_words = implode(' ', array_slice(explode(' ', $file), 0, 50));
$result = preg_replace('/'<.*?'>|'s*/', '', $less_words);
echo '<p>$result ...<br> <a href="$url">Read more</a></p>';
/* TO ADD: URL variable */
}
}
我遇到的问题是,当回显$less_words
时,输出的文本是正确的,但我所显示的2个示例文件中的<h1></h1>
标记是格式化的。但是当回显$result
时,页面上输出的文本是$result Read more
。
$file = file_get_contents('news/' . $value);
$file = strip_tags($file);
$less_words = implode(' ', array_slice(explode(' ', $file), 0, 50));
echo '<p>'.$less_words.'...<br> <a href="'.$url.'">Read more</a></p>';
更改
echo '<p>$result ...<br> <a href="$url">Read more</a></p>';
/* TO ADD: URL variable */
至
echo '<p>'.$result.' ...<br> <a href="'.$url.'">Read more</a></p>';
/* TO ADD: URL variable */