file_create_path

Versions
4.6 – 6
file_create_path($dest = 0)

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 A string containing the path to verify. If this value is omitted, Drupal's 'files' directory will be used.

Return value

A string containing the path to file, with file system directory appended if necessary, or FALSE if the path is invalid (i.e. outside the configured 'files' or temp directories).

Related topics

▾ 15 functions call file_create_path()

drupal_build_css_cache in includes/common.inc
Aggregate and optimize CSS files, putting them in the files directory.
drupal_build_js_cache in includes/common.inc
Aggregate JS files, putting them in the files directory.
drupal_clear_css_cache in includes/common.inc
Delete all cached CSS files.
drupal_clear_js_cache in includes/common.inc
Delete all cached JS files.
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_download in includes/file.inc
Call modules that implement hook_file_download() to find out if a file is accessible and what headers it should be transferred with. If a module returns -1 drupal_access_denied() will be returned. If one or more modules returned headers the download...
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_transfer in includes/file.inc
Transfer file using http to client. Pipes a file through Drupal to the client.
hook_file_download in developer/hooks/core.php
Control access to private file downloads and specify HTTP headers.
locale_uninstall in modules/locale/locale.install
Implementation of hook_uninstall().
locale_update_js_files in modules/locale/locale.module
Update JavaScript translation file, if required, and add it to the page.
upload_file_download in modules/upload/upload.module
Implementation of hook_file_download().
user_admin_settings in modules/user/user.admin.inc
Form builder; Configure user settings for this site.
user_file_download in modules/user/user.module
Implementation of hook_file_download().
_locale_rebuild_js in includes/locale.inc
(Re-)Creates the JavaScript translation file for a language.

Code

includes/file.inc, line 63

<?php
function file_create_path($dest = 0) {
  $file_path = file_directory_path();
  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;
  }
  // check if the destination is instead inside the Drupal temporary files directory.
  else if (file_check_location($dest, file_directory_temp())) {
    return $dest;
  }
  // Not found, try again with prefixed directory path.
  else if (file_check_location($file_path .'/'. $dest, $file_path)) {
    return $file_path .'/'. $dest;
  }
  // File not found.
  return FALSE;
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.