Как добавить новые данные в начало of.txt без удаления в PHP [дубликат]


На этот вопрос уже есть ответ здесь:

Когда я использую эти коды

$fp = fopen('data.txt', 'w');
fwrite($fp, $data);
fclose($fp);

Он перезаписывает текст. Мне тоже нужны старые данные в нижнем колонтитуле. итак, как добавить новые данные в начало файла .txt без удаления в PHP

Возможно output.txt и просмотр

(new) line8
(new) line7
(new) line6
(old) line5
(old) line4
(old) line3
(old) line2
(old) line1
Author: Andrew, 2017-04-26

4 answers

$txt = "col1 col2 col3 coln";
file_put_contents('data.txt', $txt.PHP_EOL , FILE_APPEND | LOCK_EX);

Пожалуйста, попробуйте это. Спасибо

 3
Author: Samuel Akosile, 2017-04-26 15:22:29

Вы можете попытаться объединить данные, которые хотите добавить, с данными в 'data.txt - досье.

$data = "(new) line\n";
file_put_contents("data.txt", $data . file_get_contents("data.txt"));
 2
Author: dodo254, 2017-04-26 12:58:04

Вы можете использовать из PHP DOC файл получить содержимое и файл поместить содержимое

<?php

error_reporting(E_ALL); ini_set('display_errors', 1);

$newdata = "4- whatever you need \n";
$datafromfile = file_get_contents("data.inc.txt");
file_put_contents("data.inc.txt", $newdata.$datafromfile);

?>
 1
Author: OldPadawan, 2017-04-26 13:23:22

Попробуйте открыть файл в режиме "a" вместо "w".

$fp = fopen('data.txt', 'a');

Из руководства по php: fopen

'w' Открыт только для записи; поместите указатель файла в начало файла и урежьте файл до нулевой длины. Если файл не существует, попытайтесь его создать.

'a' Открыт только для записи; поместите указатель файла в конец файла. Если файл не существует, попытайтесь его создать. В этом режиме функция fseek() не имеет эффекта, записи являются всегда прилагается.

 1
Author: dinhokz, 2017-04-26 13:33:22