function hook_file_copy
Same name in other branches
- 7.x modules/system/system.api.php \hook_file_copy()
- 9 core/modules/file/file.api.php \hook_file_copy()
- 8.9.x core/modules/file/file.api.php \hook_file_copy()
- 10 core/modules/file/file.api.php \hook_file_copy()
Respond to a file that has been copied.
Parameters
\Drupal\file\FileInterface $file: The newly copied file entity.
\Drupal\file\FileInterface $source: The original file before the copy.
See also
\Drupal\file\FileRepositoryInterface::copy()
Related topics
1 invocation of hook_file_copy()
- FileRepository::copy in core/
modules/ file/ src/ FileRepository.php
File
-
core/
modules/ file/ file.api.php, line 78
Code
function hook_file_copy(FileInterface $file, FileInterface $source) : void {
// Make sure that the file name starts with the owner's user name.
if (!str_starts_with($file->getFilename(), $file->getOwner()->name)) {
$file->setFilename($file->getOwner()->name . '_' . $file->getFilename());
$file->save();
\Drupal::logger('file')->notice('Copied file %source has been renamed to %destination', [
'%source' => $source->filename,
'%destination' => $file->getFilename(),
]);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.