Метод mkdir
Метод mkdir класса Filesystem создаёт директорию по указанному пути.
Первым параметром передаётся путь к создаваемой директории. Вторым параметром
можно передать права доступа к директории. Класс Filesystem предоставляет
удобную обёртку над нативными функциями PHP для работы с файловой системой.
Синтаксис
$fs->mkdir(string $dirs, int $mode = 0777)
Пример
Давайте создадим директорию 'var/uploads' в корне проекта:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Filesystem\Filesystem;
class FileController extends AbstractController
{
public function createDir(): Response
{
$fs = new Filesystem();
$fs->mkdir('var/uploads');
return new Response('directory created');
}
}
?>
Результат выполнения кода:
"directory created"
Пример
Давайте создадим директорию с определёнными правами доступа:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Filesystem\Filesystem;
class FileController extends AbstractController
{
public function createDir(): Response
{
$fs = new Filesystem();
$fs->mkdir('var/uploads', 0755);
return new Response('directory created with mode 0755');
}
}
?>
Результат выполнения кода:
"directory created with mode 0755"
Пример
Давайте создадим несколько директорий, передав массив путей:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Filesystem\Filesystem;
class FileController extends AbstractController
{
public function createDirs(): Response
{
$fs = new Filesystem();
$fs->mkdir(['var/uploads', 'var/cache', 'var/logs']);
return new Response('directories created');
}
}
?>
Результат выполнения кода:
"directories created"
Смотрите также
-
класс
Filesystem,
который предоставляет методы для работы с файловой системой -
метод
exists,
который проверяет наличие файла или директории -
метод
remove,
который удаляет файлы и директории -
метод
copy,
который копирует файлы и директории