當前位置: 首頁> 最新文章列表> 使用PHP "file" 函數讀取文件內容並轉為數組的完整指南

使用PHP "file" 函數讀取文件內容並轉為數組的完整指南

M66 2025-06-18

使用PHP "file" 函數讀取文件內容並轉為數組的完整指南

在PHP中,有許多實用的文件操作函數,其中"file" 函數是最常用的一種。它能夠輕鬆讀取文件內容,並將每一行轉換為數組中的一個元素。

函數原型

函數的基本原型如下:

array file ( string $filename [, int $flags = 0 [, resource $context ]])
    

如何使用"file" 函數

首先,我們需要一個文件來演示這個函數的用法。我們創建一個名為"sample.txt" 的文本文件,並寫入一些內容:

Hello, world!
This is a sample file.
It is used for testing file functions in PHP.
    

接下來,使用"file" 函數來讀取這個文件,並將每一行的內容存儲到數組中:

$fileContent = file("sample.txt");
print_r($fileContent);
    

執行這段代碼時,輸出結果如下:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

如上所示,"file" 函數成功將文件內容轉化為一個數組,每一行文本成為數組的一個元素。

去除換行符

需要注意的是,"file" 函數默認會保留每行的換行符。如果您希望去除這些換行符,可以使用"FILE_IGNORE_NEW_LINES" 參數:

$fileContent = file("sample.txt", FILE_IGNORE_NEW_LINES);
print_r($fileContent);
    

執行後,打印結果如下:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

可以看到,換行符已經被成功移除。

跳過空行

此外,您還可以通過設置"flags" 參數,進一步控製文件的讀取方式。例如,使用"FILE_SKIP_EMPTY_LINES" 參數來跳過文件中的空行:

$fileContent = file("sample.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
print_r($fileContent);
    

執行後,輸出結果為:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

如您所見,所有空行都已被跳過,數組中只保留了非空行。

總結

PHP的"file" 函數為我們提供了便捷的方式來讀取文件並將其轉化為數組。通過傳遞不同的參數,我們能夠靈活控制是否去除換行符以及是否跳過空行。這使得我們在處理文件時更為高效。