Download the PHP package fi1a/filesystem without Composer
On this page you can find all versions of the php package fi1a/filesystem. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download fi1a/filesystem
More information about fi1a/filesystem
Files in fi1a/filesystem
Package filesystem
Short Description PHP filesystem обеспечивает уровень абстракции файловой системы
License MIT
Homepage https://github.com/fi1a/filesystem
Informations about the package filesystem
PHP filesystem обеспечивает уровень абстракции файловой системы
Уровень абстракции файловой системы позволяет разрабатывать приложение без необходимости знать, где и как будут храниться файлы. Предоставляет один интерфейс для взаимодействия с разными типами файловых систем. Также классы абстракции файла и папки имеют вспомогательные методы для работы с ними.
Доступные адаптеры:
Fi1a\Filesystem\Adapters\LocalAdapter- адаптер файловой системы.
Установка
Установить этот пакет можно как зависимость, используя Composer.
Класс файловой системы
Класс файловой системы имеет три фабричных метода для получения классов абстракции файлов и папок.
- factory - опредляет до чего передан путь и создает объект абстракции файла или папки;
- factoryFolder - создает объект абстракции папки файловой системы;
- factoryFile - создает объект абстракции файла файловой системы.
Класс абстракции папки
Класс абстракции папки предназначен для упрощения работы с папкой, независимо от выбранной файловой системы.
Методы Fi1a\Filesystem\FolderInterface:
| Метод | Описание |
|---|---|
| getPath() | Возвращает путь |
| isExist(): bool | Проверяет существование |
| isFile(): bool | Является ли файлом |
| isFolder(): bool | Является ли папкой |
| getSize() | Возвращает размер |
| getName() | Возвращает имя |
| getParent() | Возвращает класс родительской папки |
| peekParentPath() | Возвращает путь до родительской папки |
| canRead(): bool | Проверяет возможность чтения |
| canWrite(): bool | Проверяет возможность записи |
| make(): bool | Создание |
| delete(): bool | Удаляет |
| copy(string $path): bool | Копирует |
| rename(string $newName): bool | Переименовывает |
| move(string $path): bool | Перемещает |
| all() | Возвращает коллекцию из дочерних элементов |
| allFiles() | Возвращает коллекцию из дочерних файлов |
| allFolders() | Возвращает коллекцию из дочерних папок |
| getFilesystem(): FilesystemInterface | Возвращает объект файловой системы |
| getFolder(string $path): FolderInterface | Возвращает дочернюю папку |
| getFile(string $path): FileInterface | Возвращает дочерний файл |
Пример создания папки:
Класс абстракции файла
Класс абстракции файла предназначен для упрощения работы с файлом, независимо от выбранной файловой системы.
Методы Fi1a\Filesystem\FileInterface:
| Метод | Описание |
|---|---|
| getPath() | Возвращает путь |
| isExist(): bool | Проверяет существование |
| isFile(): bool | Является ли файлом |
| isFolder(): bool | Является ли папкой |
| getSize() | Возвращает размер |
| getName() | Возвращает имя |
| getBaseName(): string | Возвращает имя без расширения |
| getExtension() | Возвращает расширение |
| getParent() | Возвращает класс родительской папки |
| peekParentPath() | Возвращает путь до родительской папки |
| canRead(): bool | Проверяет возможность чтения |
| canWrite(): bool | Проверяет возможность записи |
| canExecute(): bool | Проверяет возможность выполнения |
| make(): bool | Создание |
| delete(): bool | Удаляет |
| copy(string $path): bool | Копирует |
| rename(string $newName): bool | Переименовывает |
| move(string $path): bool | Перемещает |
| read() | Возвращает содержимое файла |
| write(string $content) | Запись в файл |
| getMTime() | Возвращает время изменения файла |
| getFilesystem(): FilesystemInterface | Возвращает объект файловой системы |
Пример записи в файл:
Адаптеры
Адаптер файловой системы
Адаптер файловой системы Fi1a\Filesystem\Adapters\LocalAdapter предназначен для использования локальной файловой системы
в классах абстракции.
Аргументы конструктора Fi1a\Filesystem\Adapters\LocalAdapter:
| Аргумент | Описание |
|---|---|
| string $directory | Путь ограничивающий доступ |
| int $rights = 0775 | Права устанавливаемые по умолчанию для новых папок и файлов |
Вспомогательные методы для файловой системы содержатся в классе Fi1a\Filesystem\Utils\LocalUtil:
| Метод | Описание |
|---|---|
| isAbsolutePath(string $path): bool | Определяет является ли путь абсолютным |