К содержанию
Medusa
Документация

Файлы

Medusa\Storage\File предоставляет методы для создания, чтения, записи, загрузки и удаления файлов в хранилище приложения.

Инициализация

Создайте экземпляр класса и передайте в конструктор имя директории и имя файла:

use Medusa\Storage\File;

$file = new File('reports', 'march-report.txt');

После этого вы сможете работать с файлом через переменную $file.

Создание файла

$created = $file->create();

if ($created) {
    echo 'Файл "march-report.txt" создан';
} else {
    echo 'Не удалось создать файл "march-report.txt"';
}

Запись данных в файл

Для записи используйте метод $file->write($content, $isOverwrite = true).

$written = $file->write('Отчёт за март готов к отправке.', false);

if ($written) {
    echo 'Данные записаны в файл "march-report.txt"';
} else {
    echo 'Не удалось записать данные в файл "march-report.txt"';
}

Загрузка файла

$uploaded = $file->upload('/tmp/phpho5g748g59g0epQZc4S');

if ($uploaded) {
    echo 'Файл "march-report.txt" загружен';
} else {
    echo 'Не удалось загрузить файл "march-report.txt"';
}

Проверка существования файла

$exists = $file->exists();

if ($exists) {
    echo 'Файл "march-report.txt" существует';
} else {
    echo 'Файл "march-report.txt" не существует';
}

Получение полного пути

$filePath = $file->path();

echo $filePath;

Чтение содержимого файла

try {
    $content = $file->read();

    if (is_string($content)) {
        echo $content;
    } else {
        echo 'Не удалось прочитать файл "march-report.txt"';
    }
} catch (RuntimeException $exception) {
    echo 'Файл "march-report.txt" не существует';
}

Удаление файла

$removed = $file->remove();

if ($removed) {
    echo 'Файл "march-report.txt" удалён';
} else {
    echo 'Не удалось удалить файл "march-report.txt"';
}