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 從 此開始可選。
|
示例 #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.
註釋
注意: 在讀取在 Macintosh 電腦中或由其建立的檔案時, 如果 PHP 不能正確的識別行結束符,啟用執行時配置可選項 auto_detect_line_endings 也許可以解決此問題。
參見
- fgets() - 從檔案指針中讀取一行
- fopen() - 打開檔案或者 URL
- popen() - 打開程序檔案指針
- fsockopen() - 打開一個網路連線或者一個Unix套接字連線
- strip_tags() - 從字串中去除 HTML 和 PHP 標記