On this page
article
Операции с папками
PHP-решение для операций с папками
Описание
Этот раздел содержит PHP-решение для операций с папками в Битрикс24.
Пример использования
Пример 1: Получение информации о папке
Этот пример демонстрирует, как получить метаданные папки с Битрикс24 Диска по ее ID, включая ее название и внутреннюю ссылку.
use Bitrix\Disk\Folder;
use Bitrix\Main\Loader;
Loader::includeModule('disk');
// ID папки, информацию о которой нужно получить
$folderId = 1; // Замените на реальный ID папки (например, корневая папка пользователя)
$folderInfo = [];
$folder = Folder::loadById($folderId);
if ($folder) {
$folderInfo = [
'ID' => $folder->getId(),
'NAME' => $folder->getName(),
'URL' => $folder->getPublicUrl(), // Получение публичной ссылки, если есть
'CREATE_TIME' => $folder->getCreateTime()->toString(),
'CREATED_BY' => $folder->getCreatedBy(),
];
// Если нужна внутренняя ссылка для работы в рамках Битрикс24
$folderInfo['INTERNAL_URL'] = \Bitrix\Disk\UrlManager::getInstance()->getPathFolderList($folder->getStorage()->getId(), $folder->getId());
}
$rootActivity = $this->GetRootActivity();
$rootActivity->SetVariable("FolderInfo", $folderInfo);
Пример 2: Получение папок внутри конкретной папки
Этот пример показывает, как получить список всех дочерних папок, находящихся в указанной папке на Битрикс24 Диске.
use Bitrix\Disk\Folder;
use Bitrix\Main\Loader;
Loader::includeModule('disk');
// ID родительской папки, из которой нужно получить дочерние папки
$parentFolderId = 1; // Замените на реальный ID родительской папки
$childFolders = [];
$parentFolder = Folder::loadById($parentFolderId);
if ($parentFolder) {
$folders = $parentFolder->getChildren(
[
'filter' => [
'=TYPE' => \Bitrix\Disk\Internals\FolderTable::TYPE_FOLDER
]
]
);
foreach ($folders as $folder) {
$childFolders[] = [
'ID' => $folder->getId(),
'NAME' => $folder->getName(),
'URL' => $folder->getPublicUrl(),
'INTERNAL_URL' => \Bitrix\Disk\UrlManager::getInstance()->getPathFolderList($folder->getStorage()->getId(), $folder->getId()),
];
}
}
$rootActivity = $this->GetRootActivity();
$rootActivity->SetVariable("ChildFolders", $childFolders);
Параметры
Параметр | Тип | Описание |
---|---|---|
param1 | string | Описание param1 . |
param2 | int | Описание param2 . |
Возвращаемое значение
Описание возвращаемого значения.