Spec-Zone.ru › CakePHP 4.4

Класс
Folder

Обозреватель структуры папок, отображает папки и файлы. Предоставляет интерфейс объекта для общих задач, связанных с каталогами.

Пространство имён: Cake\Filesystem
Устаревший: 4.0.0 Будет удалён в 5.0.
Ссылка: https://book.cakephp.org/4/ru/core-libraries/file-folder.html#folder-api

Константы

  • string
    MERGE
    'merge'

    Схема по умолчанию для Folder::copy. Рекурсивно сливает подпапки с одинаковым именем.

  • string
    OVERWRITE
    'overwrite'

    Схема перезаписи для Folder::copy. Подпапки с одинаковым именем будут заменены.

  • string
    SKIP
    'skip'

    Схема пропуска для Folder::copy. Если подпапка с одинаковым именем уже существует, она будет пропущена.

  • string
    SORT_NAME
    'name'

    Режим сортировки по имени.

  • string
    SORT_TIME
    'time'

    Режим сортировки по времени.

Краткое описание свойств

  • $_directories protected
    array

    Хранит массив полных путей к каталогам.

  • $_errors protected
    array

    Хранит ошибки последнего метода.

  • $_files protected
    array

    Хранит массив полных путей к файлам.

  • $_fsorts protected
    array<string>

    Массив функций, которые вызываются в зависимости от выбранного типа сортировки.

  • $_messages protected
    array

    Хранит сообщения последнего метода.

  • $mode public
    int

    Режим, используемый при создании. Не выполняет никаких действий на платформах Windows.

  • $path public
    string

    Путь к папке.

  • $sort public
    bool

    Сортировка. Определяет, должны ли результаты списка быть отсортированы по имени.

Краткое описание методов

  • __construct() public

    Конструктор.

  • _findRecursive() protected

    Вспомогательная функция для findRecursive.

  • addPathElement() public static

    Возвращает $path с добавленным $element, с правильным слэшем между ними.

  • cd() public

    Изменить текущую директорию на $path.

  • chmod() public

    Рекурсивно изменить права доступа к структуре каталога. Это также включает изменение прав на файлы.

  • copy() public

    Рекурсивное копирование каталога.

  • correctSlashFor() public static

    Возвращает правильный набор слэшей для заданного $path. (\ для путей Windows и / для других путей.)

  • create() public

    Рекурсивно создать структуру каталога.

  • delete() public

    Рекурсивно удалить каталоги, если система это позволяет.

  • dirsize() public

    Возвращает размер в байтах этой папки и её содержимого.

  • errors() public

    Получить ошибки от последнего метода.

  • find() public

    Возвращает массив всех соответствующих файлов в текущей директории.

  • findRecursive() public

    Возвращает массив всех соответствующих файлов в и ниже текущей директории.

  • inPath() public

    Возвращает true, если папка находится в заданном пути.

  • isAbsolute() public static

    Возвращает true, если заданный $path — это абсолютный путь.

  • isRegisteredStreamWrapper() public static

    Возвращает true, если заданный $path — зарегистрированный обработчик потоков.

  • isSlashTerm() public static

    Возвращает true, если заданный $path заканчивается на слэше (т.е. является завершённым слэшем).

  • isWindowsPath() public static

    Возвращает true, если заданный $path — это путь Windows.

  • messages() public

    Получить сообщения от последнего метода.

  • move() public

    Рекурсивное перемещение каталога.

  • normalizeFullPath() public static

    Возвращает правильный набор слэшей для заданного $path. (\ для путей Windows и / для других путей.)

  • pwd() public

    Возвращает текущий путь.

  • read() public

    Возвращает массив содержимого текущей директории. Возвращаемый массив содержит два массива: один для каталогов и один для файлов.

  • realpath() public

    Получить реальный путь (учитывая ".." и т.п.)

  • slashTerm() public static

    Возвращает $path с добавленным завершающим слэшем (скорректированным для Windows или других ОС).

  • subdirectories() public

    Возвращает массив подкаталогов для заданного или текущего пути.

  • tree() public

    Возвращает массив вложенных каталогов и файлов в каждом каталоге.

END_OF_DOCUMENT_MARKER

Подробное описание методов

__construct() public

__construct(string|null $path = null, bool $create = false, int|null $mode = null)

Конструктор.

Параметры

string|null $path необязательный

Путь к папке

bool $create необязательный

Создать папку, если она не найдена

int|null $mode необязательный

Режим (CHMOD) для примененния к созданной папке, false для игнорирования

_findRecursive() protected

_findRecursive(string $pattern, bool $sort = false): array

Вспомогательная функция для findRecursive.

Параметры

string $pattern

Шаблон для сопоставления

bool $sort необязательный

Нужно ли сортировать результаты.

Возвращает

array

addPathElement() public static

addPathElement(string $path, array<string>|string $element): string

Возвращает $path с добавленным $element, с правильным слешем между ними.

Параметры

string $path

Путь

array<string>|string $element

Элемент для добавления в конец пути

Возвращает

string

cd() public

cd(string $path): string|false

Изменить директорию на $path.

Параметры

string $path

Путь к директории, на которую нужно перейти

Возвращает

string|false

chmod() public

chmod(string $path, int|null $mode = null, bool $recursive = true, array<string> $exceptions = []): bool

Рекурсивно изменяет режим каталога. Это включает в себя изменение режима файлов тоже.

Параметры

string $path

Путь к файлу для изменения режима.

int|null $mode необязательный

Восьмеричное значение, например, 0755.

bool $recursive необязательный

Рекурсивное изменение режима, установить в false, чтобы изменить только текущую директорию.

array<string> $exceptions необязательный

Массив файлов, директорий для пропуска.

Возвращает

bool

copy() public

copy(string $to, array<string, mixed> $options = []): bool

Рекурсивное копирование каталога.

Опции

  • from Директория для копирования, это вызовет cd(), изменив результаты pwd().
  • mode Режим для копирования файлов/каталогов как целое число, например, 0775.
  • skip Файлы/директории для пропуска.
  • scheme Folder::MERGE, Folder::OVERWRITE, Folder::SKIP
  • recursive Копировать рекурсивно или нет (по умолчанию: true - рекурсивно)

Параметры

string $to

Директория для копирования.

array<string, mixed> $options необязательный

Массив опций (см. выше).

Возвращает

bool

correctSlashFor() public static

correctSlashFor(string $path): string

Возвращает правильный набор слешей для заданного $path. (\ для путей Windows и / для других путей.)

Параметры

string $path

Путь для проверки

Возвращает

string

create() public

create(string $pathname, int|null $mode = null): bool

Создает структуру каталогов рекурсивно.

Может быть использован для создания глубоких структур путей, таких как /foo/bar/baz/shoe/horn

Параметры

string $pathname

Структура каталога для создания. Абсолютный или относительный путь. Если путь относительный и существует в текущем каталоге процесса, он не будет создан. В противном случае, относительные пути будут добавлены к текущему пути pwd().

int|null $mode необязательный

восьмеричное значение 0755

Возвращает

bool

delete() public

delete(string|null $path = null): bool

Рекурсивно удаляет директории, если система позволяет.

Параметры

string|null $path необязательный

Путь к директории для удаления

Возвращает

bool

dirsize() public

dirsize(): int

Возвращает размер в байтах этой папки и ее содержимого.

Возвращает

int

errors() public

errors(bool $reset = true): array

Получить ошибку от последнего метода

Параметры

bool $reset необязательный

Сбросить стек ошибок после чтения

Возвращает

array

find() public

find(string $regexpPattern = '.*', string|bool $sort = false): array<string>

Возвращает массив всех соответствующих файлов в текущей директории.

Параметры

string $regexpPattern необязательный

Шаблон preg_match (по умолчанию: .*)

string|bool $sort необязательный

Нужно ли сортировать результаты.

Возвращает

array<string>

findRecursive() public

findRecursive(string $pattern = '.*', string|bool $sort = false): array

Возвращает массив всех соответствующих файлов в и ниже текущей директории.

Параметры

string $pattern необязательный

Шаблон preg_match (по умолчанию: .*)

string|bool $sort необязательный

Нужно ли сортировать результаты.

Возвращает

array

inPath() public

inPath(string $path, bool $reverse = false): bool

Возвращает true, если папка находится в заданном пути.

Параметры

string $path

Абсолютный путь для проверки, что текущая pwd() находится внутри.

bool $reverse необязательный

Обратить поиск, проверить, находится ли заданный $path внутри текущей pwd().

Возвращает

bool

Вызывает исключение

InvalidArgumentException
Когда переданный аргумент `$path` не является абсолютным путём.

isAbsolute() public static

isAbsolute(string $path): bool

Возвращает true, если заданный $path является абсолютным путём.

Параметры

string $path

Путь для проверки

Возвращает

bool

isRegisteredStreamWrapper() public static

isRegisteredStreamWrapper(string $path): bool

Возвращает true, если заданный $path является зарегистрированным обработчиком потоков.

Параметры

string $path

Путь для проверки

Возвращает

bool

isSlashTerm() public static

isSlashTerm(string $path): bool

Возвращает true, если заданный $path оканчивается слешем (т.е. является путём, оканчивающимся на слеш).

Параметры

string $path

Путь для проверки

Возвращает

bool

isWindowsPath() public static

isWindowsPath(string $path): bool

Возвращает true, если заданный $path является путём Windows.

Параметры

string $path

Путь для проверки

Возвращает

bool

messages() public

messages(bool $reset = true): array

Получить сообщения из последнего метода

Параметры

bool $reset необязательно

Сбросить стек сообщений после чтения

Возвращает

array

move() public

move(string $to, array<string, mixed> $options = []): bool

Рекурсивное перемещение каталога.

Опции

  • from Каталог для копирования, что вызовет cd(), изменяя результаты pwd().
  • mode Режим копирования файлов/каталогов как целое число, например, 0775.
  • skip Файлы/каталоги для пропуска.
  • scheme Folder::MERGE, Folder::OVERWRITE, Folder::SKIP
  • recursive Копировать рекурсивно или нет (по умолчанию: true — рекурсивно)

Параметры

string $to

Каталог для перемещения.

array<string, mixed> $options необязательно

Массив опций (см. выше).

Возвращает

bool

normalizeFullPath() public static

normalizeFullPath(string $path): string

Возвращает правильный набор слешей для заданного $path. (\ для путей Windows и / для других путей.)

Параметры

string $path

Путь для преобразования

Возвращает

string

pwd() public

pwd(): string|null

Возвращает текущий путь.

Возвращает

string|null

read() public

read(string|bool $sort = self::SORT_NAME, array|bool $exceptions = false, bool $fullPath = false): array

Возвращает массив содержимого текущей директории. Возвращаемый массив содержит два массива: один для каталогов и один для файлов.

Параметры

string|bool $sort необязательно

Нужно ли сортировать результаты. Установите это и свойство sort в false, чтобы получить несортированные результаты.

array|bool $exceptions необязательно

Массив или булево значение true, чтобы не включать скрытые файлы.

bool $fullPath необязательно

True возвращает полный путь.

Возвращает

array

realpath() public

realpath(string $path): string|false

Получить фактический путь (учитывая "..", и т.д.)

Параметры

string $path

Путь для разрешения

Возвращает

string|false

slashTerm() public static

slashTerm(string $path): string

Возвращает $path с добавленным заключительным слэшем (исправлено для Windows или других ОС).

Параметры

string $path

Путь для проверки

Возвращает

string

subdirectories() public

subdirectories(string|null $path = null, bool $fullPath = true): array

Возвращает массив подкаталогов для заданного или текущего пути.

Параметры

string|null $path необязательно

Путь к директории, для которой требуется получить подкаталоги.

bool $fullPath необязательно

Возвращать полный путь или только имя директории.

Возвращает

array

tree() public

tree(string|null $path = null, array|bool $exceptions = false, string|null $type = null): array

Возвращает массив вложенных каталогов и файлов в каждом каталоге

Параметры

string|null $path необязательно

путь к каталогу, для построения дерева

array|bool $exceptions необязательно

Массив исключаемых файлов/каталогов или boolean true, чтобы не включать скрытые файлы/каталоги

string|null $type необязательно

либо 'file', либо 'dir'. Null возвращает как файлы, так и директории

Возвращает

array

Подробное описание свойств

$_directories protected

Хранит массив полных путей к каталогам.

Тип

array

$_errors protected

Хранит ошибки от последнего метода.

Тип

array

$_files protected

Хранит массив полных путей к файлам.

Тип

array

$_fsorts protected

Массив функций, которые вызываются в зависимости от выбранного типа сортировки.

Тип

array<string>

$_messages protected

Хранит сообщения от последнего метода.

Тип

array

$mode public

Режим, используемый при создании. Не делает ничего на платформах Windows.

Тип

int

$path public

Путь к папке.

Тип

string

$sort public

Сортировка. Нужно ли сортировать результаты по имени.

Тип

bool

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Filesystem.Folder.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API