如何使用 PHP 替換文字檔案中的特定行?

Linda Hamilton
發布: 2024-11-13 02:42:02
原創
1023 人瀏覽過

How Can I Replace Specific Lines in a Text File with PHP?

使用PHP 取代文字檔案中的特定行

在文字檔案中,根據特定單字的存在選擇性地取代行是一個共同的要求。在這方面,PHP 提供了幾種方法來完成此任務。

對較小的文件使用數組函數(適合內存)

對於適合內存的文本文件,可以採用以下方法:

$data = file('myfile'); // Array of lines
function replace_a_line($data) {
    return (stristr($data, 'certain word')) ? "replacement line!\n" : $data;
}
$data = array_map('replace_a_line', $data);
file_put_contents('myfile', $data);
登入後複製

PHP 版本中的Lambda 函數> 5.3.0允許簡潔的版本:

$data = array_map(function($data) {
    return (stristr($data, 'certain word')) ? "replacement line\n" : $data;
}, $data);
登入後複製

對於較大的文件(內存密集型)

對於較大的文件,以下方法逐行迭代-行而不將整個檔案載入記憶體:

$reading = fopen('myfile', 'r');
$writing = fopen('myfile.tmp', 'w');
$replaced = false;
while (!feof($reading)) {
    $line = fgets($reading);
    if (stristr($line, 'certain word')) {
        $line = "replacement line!\n";
        $replaced = true;
    }
    fputs($writing, $line);
}
fclose($reading); fclose($writing);
if ($replaced) rename('myfile.tmp', 'myfile');
else unlink('myfile.tmp');
登入後複製

透過實作這些技術,您可以根據單字匹配有效地替換文字檔案中的特定行。

以上是如何使用 PHP 替換文字檔案中的特定行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板