function file_move in Drupal 4
Same name and namespace in other branches
- 8 core/modules/file/file.module \file_move()
- 5 includes/file.inc \file_move()
- 6 includes/file.inc \file_move()
- 7 includes/file.inc \file_move()
- 9 core/modules/file/file.module \file_move()
Moves a file to a new location.
- Checks if $source and $dest are valid and readable/writable.
- Performs a file move if $source is not equal to $dest.
- If file already exists in $dest either the call will error out, replace the file or rename the file based on the $replace parameter.
Parameters
$source A string specifying the file location of the original file.: This parameter will contain the resulting destination filename in case of success.
$dest A string containing the directory $source should be copied to.: If this value is omitted, Drupal's 'files' directory will be used.
$replace Replace behavior when the destination file already exists.:
- FILE_EXISTS_REPLACE - Replace the existing file
- FILE_EXISTS_RENAME - Append _{incrementing number} until the filename is unique
- FILE_EXISTS_ERROR - Do nothing and return false.
Return value
True for success, false for failure.
Related topics
2 calls to file_move()
- file_save_data in includes/
file.inc - Save a string to the specified destination.
- file_save_upload in includes/
file.inc - Saves a file upload to a new location. The source file is validated as a proper upload and handled as such.
File
- includes/
file.inc, line 414 - API for handling file uploads and server file management.
Code
function file_move(&$source, $dest = 0, $replace = FILE_EXISTS_RENAME) {
$path_original = is_object($source) ? $source->filepath : $source;
if (file_copy($source, $dest, $replace)) {
$path_current = is_object($source) ? $source->filepath : $source;
if ($path_original == $path_current || file_delete($path_original)) {
return 1;
}
drupal_set_message(t('The removal of the original file %file has failed.', array(
'%file' => theme('placeholder', $path_original),
)), 'error');
}
return 0;
}