file_destination($destination, $replace)
Determines the destination path for a file.
Parameters
$destination: A string specifying the desired final URI or filepath.
$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
The destination filepath, or FALSE if the file already exists and FILE_EXISTS_ERROR is specified.
Related topics
- File interface
- Common file handling functions.
File
- core/includes/file.inc, line 581
- API for handling file uploads and server file management.
Code
function file_destination($destination, $replace) { if (file_exists($destination)) { switch ($replace) { case FILE_EXISTS_REPLACE: // Do nothing here, we want to overwrite the existing file. break; case FILE_EXISTS_RENAME: $basename = drupal_basename($destination); $directory = drupal_dirname($destination); $destination = file_create_filename($basename, $directory); break; case FILE_EXISTS_ERROR: // Error reporting handled by calling function. return FALSE; } } return $destination; }
Please login to continue.