高效讀取大檔案
在各種程式設計場景中,都需要處理無法完全載入記憶體中的大檔案。逐行讀取此類文件提供了一種方便的解決方案,可讓您增量處理數據,而不會耗盡系統資源。
挑戰:讀取海量檔案
考慮需求逐行讀取 1 GB 檔案。直接嘗試在記憶體中開啟檔案可能會因檔案大小而導致記憶體不足錯誤。
解:使用 fgets()
高效逐行讀取大文件,可以使用 fgets() 函數。該函數從文件中讀取一行並將其作為字串傳回。下面是一個範例程式碼片段:
$handle = fopen("inputfile.txt", "r"); if ($handle) { while (($line = fgets($handle)) !== false) { // Process the line here. } fclose($handle); }
fgets() 的好處
透過使用 fgets()而不是直接將整個文件讀入內存,您可以獲得幾個優點:
總之,fgets()函數為逐行讀取大檔案提供了一個有效的解決方案。透過利用這種技術,您可以有效地處理海量資料集,而不會遇到記憶體限制。
以上是如何在程式中有效率地逐行讀取大檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!