Для разных задач в php может потребоваться возможность записи данных в .txt файл. Например, для организации счетчиков, голосований и т.п. Реализуем эту возможность с помощью функции file_put_contents().
Простой синтаксис этой функции: file_put_contents(куда пишем, что пишем);
Рассмотрим способ записи произвольных данных в .txt файл:
<?php $filed = "save.txt";
$rez = "Записано в файлик";
file_put_contents($filed, $rez);
?>
В этом случае пишет в первую строку файла save.txt из переменной $rez. Счет строк идет с нуля. $filed - это путь к файлу save.txt. В данном случае он будет совпадать с той директорией, откуда будет запускаться весь код. Кстати, особенность функции file_put_contents() в том, что если файла save.txt не существует, он его создаст. А если существует, то перезапишет информацию.
Чтобы запись сделать с новой строки, используйте \r\n. Запишем две записи, каждая с новой строки:
<?php $filed = "save.txt";
$rez = "Записано в файлик первая \r\nи вторая с новой строки!";
file_put_contents($filed, $rez);
?>
Выгрузка данных из txt файла в php
Используйте функцию file_get_contents - позволяет произвести чтение файла в строку и имеет следующий синтаксис: file_get_contents(имя файла);
Пример:
<?php $a = file_get_contents("save.txt"); echo $a; ?>
В данном примере на экране появится все данные из файла save.txt в одной строчке.
Если вам нужно, чтобы при выгрузке из файла информация сразу очищалась от html тегов, то можно использовать эту функцию:
Синтаксис: fgetss(указатель на файл, размер файла, допустимые теги);
Пример: <?php $content = fgetss("save.txt", filesize("save.txt"), '<h1>'); echo $content,"<br>"; ?>
Если вам нужно сделать выгрузку из текстового файла не в одну строку, а с разбиением по строкам, то используйте этот пример:
<?php $loadss = file("save.txt"); echo $loadss[0]; ?>
Здесь $loadss будет являться массивом, который содержит строки из файла save.txt. Мы выводим первую строку на печать за счет переменной $loadss[0], где [0] указывает первую строку.
Теперь рассмотрим бонусный пример. Что, если нам нужно дозаписать новые значения в существующий файл.
Как сделать обновление данных в txt-ом файле
<?php $filed = "save.txt";
$rez = file_get_contents($filed);
$rez .= "\r\nИ еще одна новая строка";
file_put_contents($filed, $rez);
?>
Для этого нужно открыть save.txt на чтение, получить старые данные, добавить к ним новые и сохранить обратно в файл.
Добавить комментарий