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

▾ 14 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_clear_css_cache in includes/common.inc
Delete all cached CSS files.
fileupload_file_download in developer/examples/fileupload.module
Implementation of hook_file_download.
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
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
Allow file downloads.
theme_upload_attachments in modules/upload/upload.module
Displays file attachments in table
upload_file_download in modules/upload/upload.module
upload_menu in modules/upload/upload.module
Implementation of hook_menu().
upload_nodeapi in modules/upload/upload.module
Implementation of hook_nodeapi().
user_admin_settings in modules/user/user.module
user_file_download in modules/user/user.module
Implementation of hook_file_download().
_upload_form in modules/upload/upload.module

Code

includes/file.inc, line 51

<?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.