function hook_file_copy
Same name in other branches
- 7.x modules/system/system.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()
- 11.x 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 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()
- FileRepository::copy in core/
modules/ file/ src/ FileRepository.php - Copies a file to a new location and adds a file record to the database.
File
-
core/
modules/ file/ file.api.php, line 97
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(),
]);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.