我有一個文本文件,每次訪問者訪問此頁時我正在對它執行print_r()。使用print_r()添加數據到文本
如何使用print_r()將數據添加到我的file.txt
文本文件中?目前文本被覆蓋並且只存儲最後一個print_r()。
$output = print_r($data, true);
file_put_contents('file.txt', $output);
我有一個文本文件,每次訪問者訪問此頁時我正在對它執行print_r()。使用print_r()添加數據到文本
如何使用print_r()將數據添加到我的file.txt
文本文件中?目前文本被覆蓋並且只存儲最後一個print_r()。
$output = print_r($data, true);
file_put_contents('file.txt', $output);
可以使用FILE_APPEND
標誌:
file_put_contents('file.txt', $output, FILE_APPEND);
FILE_APPEND如果文件名已經存在,將數據追加到 文件,而不是覆蓋它。
您需要設置標誌FILE_APPEND
以在文件末尾追加$output
。
file_put_contents('file.txt', $output, FILE_APPEND);
方法1:
數據附加到該文件的底部(端)。
file_put_contents($fileDestination,print_r($data,true),FILE_APPEND)
方法2:
追加數據到文件的頂部(開始)。
$fileDestination = "/path/to/your/file.txt";
$oldData = "";
/***
Edit some catching if file exists
***/
if(file_exists($fileDestination)){
$oldData = file_get_contents($fileDestination,false, null, 0);
}
$saveData = print_r($data,true).PHP_EOL.$oldData;
unset($oldData);
file_put_contents($fileDestination,$saveData);
方法2說明:
從文件中獲取數據,該數據在它出現在文件中的順序一個變量中。然後你得到你的print_r
數據,然後給它添加一個換行符,並添加舊的文件數據,以便新數據出現在文件的頂部,然後將整個塊寫回到文件中,覆蓋當前存在的內容。
PHP_EOL
是PHP的行尾字符,用於換行符。
fopen()在追加模式,然後fwrite()和fclose() –