Php/docs/function.fgetss
来自菜鸟教程
fgetss
(PHP 4, PHP 5, PHP 7)
fgetss — 从文件指针中读取一行并过滤掉 HTML 标记
说明
fgetss
( resource $handle
[, int $length
[, string $allowable_tags
]] ) : string
和 fgets() 相同,只除了 fgetss() 尝试从读取的文本中去掉任何 HTML 和 PHP 标记。
参数
handle
- 文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。
length
- 取回该长度的数据。
allowable_tags
- 可以用可选的第三个参数指定哪些标记不被去掉。
返回值
从 handle
指向的文件中大读取 length
- 1 个字节的字符,并过滤了所有的 HTML 和 PHP 代码。
错误发生时返回 false
。
更新日志
版本 | 说明 |
---|---|
5.0.0 | 参数 length 从 此开始可选。
|
Example #1 一行行读取一个 PHP 文件
<?php$str = <<<EOD<html><body> <p>Welcome! Today is the <?php echo(date('jS')); ?> of <?= date('F'); ?>.</p></body></html>Text outside of the HTML block.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.
注释
Note:
在读取在 Macintosh 电脑中或由其创建的文件时, 如果 PHP不能正确的识别行结束符,启用运行时配置可选项 auto_detect_line_endings 也许可以解决此问题。
参见
- fgets() - 从文件指针中读取一行
- fopen() - 打开文件或者 URL
- popen() - 打开进程文件指针
- fsockopen() - 打开一个网络连接或者一个Unix套接字连接
- strip_tags() - 从字符串中去除 HTML 和 PHP 标记