File Browser API
Newer Version Available
This documentation is for Moodle 4.1.
You may also want to read the documentation for the upcoming version of Moodle.
You may also want to read the documentation for the upcoming version of Moodle.
The File Browser API is a supplemental API which can be used to fetch information relating to Files stored in the Moodle File API.
Fetch a series of breadcrumbs to the requested file
This example demonstrates using the filebrowser
API to fetch the parent folders of a file.
public function get_file_breadcrumbs(\stored_file $file): ?array {
$browser = get_file_browser();
$context = get_system_context();
$fileinfo = $browser->get_file_info(
\context::instance_by_id($file->get_contextid()),
$file->get_component(),
$file->get_filearea(),
$file->get_itemid(),
$file->get_filepath(),
$file->get_filename()
)
if ($fileinfo) {
// Build a Breadcrumb trail
$level = $fileinfo->get_parent();
while ($level) {
$path[] = [
'name' => $level->get_visible_name(),
];
$level = $level->get_parent();
}
$path = array_reverse($path);
return $path;
}
return null;
}