function hook_file_move
Same name in other branches
- 7.x modules/system/system.api.php \hook_file_move()
- 8.9.x core/modules/file/file.api.php \hook_file_move()
- 10 core/modules/file/file.api.php \hook_file_move()
- 11.x core/modules/file/file.api.php \hook_file_move()
Respond to a file that has been moved.
Parameters
\Drupal\file\FileInterface $file: The updated file entity after the move.
\Drupal\file\FileInterface $source: The original file entity before the move.
See also
\Drupal\file\FileRepositoryInterface::move()
Related topics
2 functions implement hook_file_move()
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_move in core/
modules/ file/ tests/ file_test/ file_test.module - Implements hook_file_move().
- image_file_move in core/
modules/ image/ image.module - Implements hook_file_move().
1 invocation of hook_file_move()
- FileRepository::move in core/
modules/ file/ src/ FileRepository.php - Moves a file to a new location and update the file's database entry.
File
-
core/
modules/ file/ file.api.php, line 117
Code
function hook_file_move(\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('Moved 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.