PHP 檔案系統 fgetss() 函式



PHP 檔案系統fgetss()函式從開啟的檔案中返回一行,同時刪除所有 PHP 和 HTML 標記。當您想要讀取檔案中的內容並確保不存在不需要的格式標記或程式碼時,這很有用。

此函式類似於 fgets() 函式,不同之處在於fgetss()函式可以嘗試從其讀取的文字中去除任何 HTML 和 PHP 標記。

語法

以下是 PHP 檔案系統fgetss()函式的語法:

string fgetss ( resource $handle [, int $length [, string $allowable_tags ]] )

引數

以下是fgetss()函式的必需和可選引數:

序號 引數和描述
1

handle(必需)

您要從中讀取的檔案控制代碼資源。

2

length(可選)

它定義要讀取行的最大長度。

3

allowable_tags (可選)

它是一個包含您希望在返回的字串中允許的 HTML 標記列表的字串。

返回值

該函式在從檔案行中刪除 HTML 和 PHP 標記後建立一個字串。當發生錯誤或到達檔案末尾 (EOF) 時,它返回 FALSE。

PHP 版本

fgetss()函式最初作為核心 PHP 4 的一部分引入,並且與 PHP 5、PHP 7 配合良好。此函式已在 PHP 7.3.0 中棄用,並從 PHP 8.0.0 版本中刪除。強烈建議不要單獨使用此函式。

示例

此 PHP 程式碼將向您展示 PHP 檔案系統fgetss()函式的基本用法。並讀取檔案內容並在刪除 HTML 和 PHP 標記後列印內容。

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

輸出

這將產生以下結果:

Welcome to Tutorialspoint  

示例

現在我們將嘗試從給定的檔案內容中過濾自定義標記。並使用fgetss()函式來處理此過程。此外,我們還使用了 fopen()、feof() 和 fclose() 函式,而不是fgetss()

<?php
   $handle = @fopen("/PhpProject/test.php", "r");
   if ($handle) {
      while (!feof($handle)) {
         $buffer = fgetss($handle, 4096, "<p>, <b>");
         echo $buffer;
      }
      fclose($handle);
   }
?>

輸出

這將生成以下結果:

Welcome to Tutorialspoint

示例

在此示例中,我們將使用fgetss()函式從 PHP 檔案中讀取並刪除 PHP 程式碼。

<?php
   // Open the html file here using fopen()
   $handle = fopen("/Applications/XAMPP/xamppfiles/htdocs/mac/index.php", "r");

   if ($handle) {
      while (!feof($handle)) {
         $buffer = fgetss($handle, 4096);
         echo $buffer;
      }
      fclose($handle);
   } else {
      echo "Unable to open file.";
   }
?> 

輸出

這將建立以下結果:

echo "This is the example of fgetss function.";

示例

在此示例中,我們將使用fgetss()函式從給定檔案中讀取並過濾不需要的內容。將在每次迭代中從檔案中讀取的數量由緩衝區大小定義,即 4096。

<?php
   // Open the html file here using fopne()
   $handle = fopen("/Applications/XAMPP/xamppfiles/htdocs/mac/myfile.md", "r");

   if ($handle) {
      while (!feof($handle)) {
         $buffer = fgetss($handle, 4096, "<p>,<b>,<h1>,<h2>,<h3>");
         echo $buffer;
      }
      fclose($handle);
   } else {
      echo "Unable to open file.";
   }
?> 
myfile.md
# This is an Example

This is **Tutorialspoint** Website.

## Subheading

This is a great platform for learning.

### Another Subheading

Learn and Explore.

輸出

這將建立以下結果:

This is an Example
This is Tutorialspoint Website.
Subheading
This is a great platform for learning.
Another Subheading
Learn and Explore.

注意

重要的是要知道,使用fgetss()函式時,它會從內容中刪除 PHP 和 HTML 標記。但從 PHP 7.3.0 開始,它已棄用,在 PHP 8.0.0 中已完全刪除。

總結

在 PHP 中,fgetss()函式可用於讀取檔案中的行,同時刪除 HTML 和 PHP 元素。它接受一個檔案控制代碼、一個可選的字串引數,該引數指示要包含在返回字串中的允許 HTML 標記,以及一個可選的長度引數,該引數顯示要讀取的最長行。

php_function_reference.htm
廣告