Как записать в файл на PHP?


У меня есть этот скрипт на одном бесплатном сервере с поддержкой PHP:

<html>
<body>

<?php
$file = fopen("lidn.txt","a");


fclose($file);
?>

</body>
</html>

Он создает файл lidn.txt, но он пуст.

Как я могу создать файл и записать в него что-нибудь, например строку "Кошки гоняются за мышами"?

 44
Author: user664833, 2009-11-20

7 answers

Вы можете использовать функцию более высокого уровня, такую как file_put_contents($filename, $content), которая идентична вызову fopen(), fwrite(), и fclose() последовательно записывать данные в файл.

Документы: файл_пут_контенты

 61
Author: Savageman, 2018-04-30 01:07:54

Рассмотрим fwrite():

<?php
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);
?>
 39
Author: sathish, 2018-04-30 01:10:05
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase');
fwrite($fp, 'mice');
fclose($fp);

Http://php.net/manual/en/function .fwrite.php

 14
Author: Pesse, 2009-11-20 07:42:01
$text = "Cats chase mice";
$filename = "somefile.txt";
$fh = fopen($filename, "a");
fwrite($fh, $text);
fclose($fh);

Вы используете fwrite()

 6
Author: lemon, 2009-11-20 07:33:40

Легко записать файл:

$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);
 6
Author: Trần Khải Hoàng, 2009-11-20 07:37:48

Я использую следующий код для записи файлов в свой веб-каталог.

Write_file.html

<form action="file.php"method="post">
<textarea name="code">Code goes here</textarea>
<input type="submit"value="submit">
</form>

Write_file.php

<?php
// strip slashes before putting the form data into target file
$cd = stripslashes($_POST['code']);

// Show the msg, if the code string is empty
if (empty($cd))
    echo "Nothing to write";

// if the code string is not empty then open the target file and put form data in it
else
{
    $file = fopen("demo.php", "w");
    echo fwrite($file, $cd);

    // show a success msg 
    echo "data successfully entered";
    fclose($file);
}
?>

Это рабочий скрипт. обязательно измените URL-адрес в действии формы и целевой файл в функции fopen(), если вы хотите использовать его на своем сайте.

Удачи.

 3
Author: starkeen, 2017-12-12 06:48:39

fwrite() это немного быстрее, и file_put_contents() в любом случае является просто оболочкой вокруг этих трех методов, так что вы потеряете накладные расходы. Статья

Входные данные файла (файл, данные, режим, контекст):

В file_put_contents записывает строку в файл.

Эта функция следует этим правилам при доступе к файлу.Если задан параметр FILE_USE_INCLUDE_PATH, проверьте путь включения для копии имени файла Создайте файл, если он не существует, затем откройте файл и Заблокируйте файл, если задано значение LOCK_EX, и если задано значение FILE_APPEND, переместитесь в конец файла. В противном случае очистите содержимое файла Запишите данные в файл, закройте файл и снимите все блокировки. Эта функция возвращает номер символа, записанного в файл при успешном выполнении, или значение FALSE при сбое.

Fwrite(файл,строка, длина):

В fwrite записывает в открытый файл.Функция остановится в конце файла или когда она достигнет указанного длина, в зависимости от того, что наступит раньше.Эта функция возвращает количество записанных байтов или значение FALSE при сбое.

 1
Author: A.D., 2017-12-12 07:04:52