function hook_file_copy in Drupal 9
Same name and namespace in other branches
- 8 core/modules/file/file.api.php \hook_file_copy()
- 7 modules/system/system.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
Related topics
1 function implements hook_file_copy()
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
- file_test_file_copy in core/
modules/ file/ tests/ file_test/ file_test.module - Implements hook_file_copy().
1 invocation of hook_file_copy()
- file_copy in core/
modules/ file/ file.module - Copies a file to a new location and adds a file record to the database.
File
- core/
modules/ file/ file.api.php, line 97 - Hooks for file module.
Code
function hook_file_copy(\Drupal\file\FileInterface $file, \Drupal\file\FileInterface $source) {
// Make sure that the file name starts with the owner's user name.
if (strpos($file
->getFilename(), $file
->getOwner()->name) !== 0) {
$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(),
]);
}
}