Метод dumpFile
Метод dumpFile класса Filesystem записывает переданное содержимое в файл.
Первым параметром передаётся путь к файлу, вторым - данные для записи.
Если файл не существует, он будет создан. Если существует - его содержимое будет перезаписано.
Метод возвращает true в случае успешной записи и выбрасывает исключение при ошибке.
Синтаксис
public function dumpFile(string $filename, string|iterable $content): void
Пример
Давайте запишем строку 'abcde' в файл 'data.txt':
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentFilesystemFilesystem;
use SymfonyComponentRoutingAttributeRoute;
class FileController extends AbstractController
{
#[Route('/file/dump', name: 'file_dump')]
public function dump(): Response
{
$fs = new Filesystem();
$fs->dumpFile('data.txt', 'abcde');
return new Response('done');
}
}
?>
Результат выполнения кода:
done
Пример
Давайте запишем массив строк в файл, передав его вторым параметром:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentFilesystemFilesystem;
use SymfonyComponentRoutingAttributeRoute;
class FileController extends AbstractController
{
#[Route('/file/dump-array', name: 'file_dump_array')]
public function dumpArray(): Response
{
$fs = new Filesystem();
$fs->dumpFile('data.txt', ['abcde', 'article', 'hello']);
return new Response('done');
}
}
?>
Результат выполнения кода:
done
Пример
Давайте создадим вложенную директорию и запишем в неё файл:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentFilesystemFilesystem;
use SymfonyComponentRoutingAttributeRoute;
class FileController extends AbstractController
{
#[Route('/file/dump-nested', name: 'file_dump_nested')]
public function dumpNested(): Response
{
$fs = new Filesystem();
$fs->dumpFile('var/data/user/data.txt', 'abcde');
return new Response('done');
}
}
?>
Результат выполнения кода:
done
Смотрите также
-
класс
Filesystem,
который предоставляет методы для работы с файлами -
метод
appendToFile,
который дописывает содержимое в конец файла -
метод
readFile,
который читает содержимое файла -
метод
remove,
который удаляет файл или директорию