fgetss

(PHP 4, PHP 5, PHP 7)

fgetss从文件指针获取行并剥离 HTML 标签

警告

该函数已在 PHP 7.3.0 中 弃用,并在 PHP 8.0.0 中 移除。强烈建议不要依赖该函数。

描述

fgetss(资源 $handle, 整数 $length = ?, 字符串 $allowable_tags = ?): 字符串

fgets() 相同,除了 fgetss() 尝试从其读取的文本中剥离任何 NUL 字节、HTML 和 PHP 标签。该函数保留从调用到调用的解析状态,因此它与对 fgets() 的返回值调用 strip_tags() 不等效。

参数

handle

文件指针必须有效,并且必须指向 fopen()fsockopen() 成功打开的文件(并且尚未被 fclose() 关闭)。

length

要检索的数据的长度。

allowable_tags

您可以使用可选的第三个参数来指定不应剥离的标签。有关 allowable_tags 的详细信息,请参阅 strip_tags()

返回值

返回从 handle 指向的文件中读取的最多 length - 1 字节的字符串,所有 HTML 和 PHP 代码都被剥离。

如果发生错误,则返回 false

示例

示例 #1 按行读取 PHP 文件

<?php
$str
= <<<EOD
<html><body>
<p>欢迎!今天是 <?php echo(date('jS')); ?> 的 <?= date('F'); ?>.</p>
</body></html>
HTML 块之外的文本。
EOD;
file_put_contents('sample.php', $str);

$handle = @fopen("sample.php", "r");
if (
$handle) {
while (!
feof($handle)) {
$buffer = fgetss($handle, 4096);
echo
$buffer;
}
fclose($handle);
}
?>

上面的示例将输出类似于以下内容

Welcome! Today is the  of .

Text outside of the HTML block.

注释

注意: 如果 PHP 在读取位于或由 Macintosh 计算机创建的文件时无法正确识别行尾符,则启用 auto_detect_line_endings 运行时配置选项可能有助于解决问题。

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top