Spec-Zone.ru › CakePHP 3.8

Класс Folder

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

Пространство имён: Cake\Filesystem
Ссылка: https://book.cakephp.org/3.0/ru/core-libraries/file-folder.html#folder-api
Расположение: Filesystem/Folder.php

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

  • string

    MERGE
    'merge'
  • string

    OVERWRITE
    'overwrite'
  • string

    SKIP
    'skip'
  • string

    SORT_NAME
    'name'
  • string

    SORT_TIME
    'time'

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

  • $_directories protected
    array
    Хранит массив полных путей к каталогам.
  • $_errors protected
    array
    Хранит ошибки от последнего метода.
  • $_files protected
    array
    Хранит массив полных путей к файлам.
  • $_fsorts protected
    array
    Массив функций, которые нужно вызывать в зависимости от выбранного типа сортировки.
  • $_messages protected
    array
    Хранит сообщения от последнего метода.
  • $mode public
    integer
    Режим, используемый при создании. Не делает ничего на платформах Windows.
  • $path public
    string
    Путь к папке.
  • $sort public
    boolean
    Сортировка. Нужно ли сортировать результаты списка по имени.

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

  • __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
    Возвращает массив всех соответствующих файлов в и ниже текущего каталога.
  • inCakePath() public deprecated
    Возвращает true, если папка находится в заданном пути Cake.
  • 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 и / для других путей.)
  • normalizePath() public static deprecated
    Возвращает правильный набор слэшей для заданного $path. (\ для путей Windows и / для других путей.)
  • pwd() public
    Возвращает текущий путь.
  • read() public

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

  • realpath() public
    Получить реальный путь (учитывая "..", и т.д.)
  • slashTerm() public static
    Возвращает $path с добавленным завершающим слэшем (исправлен для Windows или другой ОС).
  • subdirectories() public
    Возвращает массив подкаталогов для предоставленного или текущего пути.
  • tree() public
    Возвращает массив вложенных каталогов и файлов в каждом каталоге.

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

__construct()source public

__construct( string|null $path = null , boolean $create = false , integer|false $mode = false )

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

Параметры

строка|null $path необязательно null
Путь к папке
логическое $create необязательно false
Создать папку, если её нет
целое число|ложь $mode необязательно false
Режим (CHMOD) для применения к созданной папке, false - игнорировать

_findRecursive()source protected

_findRecursive( string $pattern , boolean $sort = false )

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

Параметры

строка $pattern
Шаблон для сопоставления
логическое $sort необязательно false
Нужно ли сортировать результаты.

Возвращаемое значение

массив
Файлы, соответствующие шаблону
END_OF_DOCUMENT_MARKER

addPathElement()source public static

addPathElement( string $path , string|array $element )

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

Параметры

строка $path
Путь
строка|массив $element
Элемент для добавления в конец пути

Возвращает

строка
Объединённый путь

cd()source public

cd( string $path )

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

Параметры

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

Возвращает

строка|boolean
Новый путь. Возвращает false при ошибке

chmod()source public

chmod( string $path , integer|boolean $mode = false , boolean $recursive = true , array $exceptions = [] )

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

Параметры

строка $path
Путь для изменения режима.
целое число|boolean $mode необязательно false
Восьмеричное значение, например, 0755.
boolean $recursive необязательно true
Рекурсивное изменение режима, установите в false, чтобы изменить только текущую директорию.
массив $exceptions необязательно []
Массив файлов, директорий для пропуска.

Возвращает

boolean
Успех.

copy()source public

copy( array|string $options )

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

Параметры

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

Параметры

массив|строка $options
Либо массив параметров (см. выше), либо строка с целевой директорией.

Возвращает

boolean
Успех.

correctSlashFor()source public static

correctSlashFor( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

строка
Набор слэшей ("\" или "/")

create()source public

create( string $pathname , integer|boolean $mode = false )

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

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

Параметры

строка $pathname

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

целое число|boolean $mode необязательно false
восьмеричное значение 0755

Возвращает

boolean
Возвращает TRUE при успехе, FALSE при ошибке

delete()source public

delete( string|null $path = null )

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

Параметры

строка|null $path необязательно null
Путь к директории для удаления

Возвращает

boolean
Успех

dirsize()source public

dirsize( )

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

Возвращает

целое число
Размер в байтах текущей папки

errors()source public

errors( boolean $reset = true )

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

Параметры

boolean $reset необязательно true
Сбросить стек ошибок после чтения

Возвращает

массив

find()source public

find( string $regexpPattern = '.*' , boolean $sort = false )

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

Параметры

строка $regexpPattern необязательно '.*'
Образец preg_match (По умолчанию: .*)
boolean $sort необязательно false
Сортировать ли результаты.

Возвращает

массив
Файлы, которые соответствуют заданному образцу

findRecursive()source public

findRecursive( string $pattern = '.*' , boolean $sort = false )

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

Параметры

строка $pattern необязательно '.*'
Образец preg_match (По умолчанию: .*)
boolean $sort необязательно false
Сортировать ли результаты.

Возвращает

массив
Файлы, соответствующие $pattern

inCakePath()source public deprecated

inCakePath( string $path = '' )

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

Устарело

3.2.12 Этот метод будет удалён в 4.0.0. Используйте вместо него inPath().

Параметры

строка $path необязательно ''
Путь для проверки.

Возвращает

boolean

inPath()source public

inPath( string $path , boolean $reverse = false )

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

Параметры

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

Возвращает

boolean

Выбрасывает

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

isAbsolute()source public static

isAbsolute( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

boolean
true, если путь является абсолютным.

isRegisteredStreamWrapper()source public static

isRegisteredStreamWrapper( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

boolean
True, если путь является зарегистрированным обработчиком потоков.

isSlashTerm()source public static

isSlashTerm( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

boolean
true, если путь заканчивается слэшем, в противном случае false

isWindowsPath()source public static

isWindowsPath( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

boolean
true, если путь Windows, иначе false

messages()source public

messages( boolean $reset = true )

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

Параметры

boolean $reset необязательно true
Сбросить стек сообщений после чтения

Возвращает

массив

move()source public

move( array|string $options )

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

Параметры

  • to Каталог, в который нужно скопировать.
  • from Каталог, из которого нужно скопировать. Это вызовет cd(), изменив результат pwd().
  • chmod Режим, с которым нужно скопировать файлы/каталоги.
  • skip Файлы/каталоги, которые нужно пропустить.
  • scheme Folder::MERGE, Folder::OVERWRITE, Folder::SKIP
  • recursive Необходимо ли копировать рекурсивно (по умолчанию: true - рекурсивно)

Параметры

массив|строка $options
(to, from, chmod, skip, scheme)

Возвращает

boolean
Успех

normalizeFullPath()source public static

normalizeFullPath( string $path )

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

Параметры

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

Возвращает

строка
Путь с правильным набором слешей ("\" или "/")

normalizePath()source public static deprecated

normalizePath( string $path )

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

Устарело

3.7.0 Этот метод будет удален в версии 4.0.0. Используйте correctSlashFor() вместо него.

Параметры

строка $path
Путь для проверки

Возвращает

строка
Набор слешей ("\" или "/")

pwd()source public

pwd( )

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

Возвращает

строка
Текущий путь

read()source public

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

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

Параметры

строка|boolean $sort необязательно self::SORT_NAME

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

массив|boolean $exceptions необязательно false
Массив или boolean true не будут брать точки файлы
boolean $fullPath необязательно false
True возвращает полный путь

Возвращает

массив
Содержимое текущей директории в виде массива, пустой массив при ошибке

realpath()source public

realpath( string $path )

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

Параметры

строка $path
Путь для разрешения

Возвращает

строка|false
Разрешенный путь

slashTerm()source public static

slashTerm( string $path )

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

Параметры

строка $path
Путь для проверки

Возвращает

строка
Путь с завершающим слэшем

subdirectories()source public

subdirectories( string|null $path = null , boolean $fullPath = true )

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

Параметры

строка|null $path необязательно null
Путь к каталогу для получения подкаталогов.
boolean $fullPath необязательно true
Возвращать полный путь или только имя каталога.

Возвращает

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

tree()source public

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

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

Параметры

строка|null $path необязательно null
путь к каталогу, с которого нужно построить дерево
массив|boolean $exceptions необязательно false

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

строка|null $type необязательно null
либо 'file', либо 'dir'. Null возвращает как файлы, так и каталоги

Возвращает

массив
Массив вложенных каталогов и файлов в каждом каталоге

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

$_directoriessource

protected массив

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

$_errorssource

protected массив

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

[]

$_filessource

protected массив

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

$_fsortssource

protected массив

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

[
    self::SORT_NAME => 'getPathname',
    self::SORT_TIME => 'getCTime'
]

$_messagessource

protected массив

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

[]

$modesource

public целое число

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

0755

$pathsource

public строка

Путь к каталогу.

$sortsource

public boolean

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

false

© 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/3.8/class-Cake.Filesystem.Folder.html

Spec-Zone.ru

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