Same name and namespace in other branches
  1. 4.7.x includes/file.inc \file_create_path()
  2. 5.x includes/file.inc \file_create_path()
  3. 6.x includes/file.inc \file_create_path()

Make sure the destination is a complete path and resides in the file system directory, if it is not prepend the file system directory.

Parameters

$dest Path to verify:

Return value

Path to file with file system directory appended if necessary. Returns FALSE if the path is invalid (i.e. outside the configured 'files'-directory).

Related topics

6 calls to file_create_path()
file_copy in includes/file.inc
Copies a file to a new location. This is a powerful function that in many ways performs like an advanced version of copy().
file_transfer in includes/file.inc
Transfer file using http to client. Pipes a file through Drupal to the client.
upload_file_download in modules/upload.module
upload_form in modules/upload.module
user_configure_settings in modules/user.module

... See full list

File

includes/file.inc, line 51
API for handling file uploads and server file management.

Code

function file_create_path($dest = 0) {
  $file_path = variable_get('file_directory_path', 'files');
  if (!$dest) {
    return $file_path;
  }

  // file_check_location() checks whether the destination is inside the Drupal files directory.
  if (file_check_location($dest, $file_path)) {
    return $dest;
  }
  else {
    if (file_check_location($dest, variable_get('file_directory_temp', FILE_DIRECTORY_TEMP))) {
      return $dest;
    }
    else {
      if (file_check_location($file_path . '/' . $dest, $file_path)) {
        return $file_path . '/' . $dest;
      }
    }
  }

  // File not found.
  return FALSE;
}