從檔案指針中讀取一行並過濾掉 HTML 標記

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($handle4096);
        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 標記

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *