FileSystem::getOsTemporaryDirectory

public static FileSystem::getOsTemporaryDirectory()

Discovers a writable system-appropriate temporary directory.

Return value

string|false A string containing the path to the temporary directory, or FALSE if no suitable temporary directory can be found.

File

core/lib/Drupal/Component/FileSystem/FileSystem.php, line 17

Class

FileSystem
Provides file system functions.

Namespace

Drupal\Component\FileSystem

Code

public static function getOsTemporaryDirectory() {
  $directories = array();

  // Has PHP been set with an upload_tmp_dir?
  if (ini_get('upload_tmp_dir')) {
    $directories[] = ini_get('upload_tmp_dir');
  }

  // Operating system specific dirs.
  if (substr(PHP_OS, 0, 3) == 'WIN') {
    $directories[] = 'c:\\windows\\temp';
    $directories[] = 'c:\\winnt\\temp';
  }
  else {
    $directories[] = '/tmp';
  }
  // PHP may be able to find an alternative tmp directory.
  $directories[] = sys_get_temp_dir();

  foreach ($directories as $directory) {
    if (is_dir($directory) && is_writable($directory)) {
      // Both sys_get_temp_dir() and ini_get('upload_tmp_dir') can return paths
      // with a trailing directory separator.
      return rtrim($directory, DIRECTORY_SEPARATOR);
    }
  }
  return FALSE;
}
doc_Drupal
2016-10-29 09:13:49
Comments
Leave a Comment

Please login to continue.