class FileSystem
Same name in this branch
- 11.x core/lib/Drupal/Core/File/FileSystem.php \Drupal\Core\File\FileSystem
Same name in other branches
- 9 core/lib/Drupal/Core/File/FileSystem.php \Drupal\Core\File\FileSystem
- 9 core/lib/Drupal/Component/FileSystem/FileSystem.php \Drupal\Component\FileSystem\FileSystem
- 8.9.x core/lib/Drupal/Core/File/FileSystem.php \Drupal\Core\File\FileSystem
- 8.9.x core/lib/Drupal/Component/FileSystem/FileSystem.php \Drupal\Component\FileSystem\FileSystem
- 10 core/lib/Drupal/Core/File/FileSystem.php \Drupal\Core\File\FileSystem
- 10 core/lib/Drupal/Component/FileSystem/FileSystem.php \Drupal\Component\FileSystem\FileSystem
Provides file system functions.
Hierarchy
- class \Drupal\Component\FileSystem\FileSystem
Expanded class hierarchy of FileSystem
8 files declare their use of FileSystem
- BuildTestBase.php in core/
tests/ Drupal/ BuildTests/ Framework/ BuildTestBase.php - DirectoryTest.php in core/
tests/ Drupal/ KernelTests/ Core/ File/ DirectoryTest.php - FileSystem.php in core/
lib/ Drupal/ Core/ File/ FileSystem.php - FileSystemTempDirectoryTest.php in core/
tests/ Drupal/ KernelTests/ Core/ File/ FileSystemTempDirectoryTest.php - FinderTest.php in core/
tests/ Drupal/ Tests/ Core/ DefaultContent/ FinderTest.php
File
-
core/
lib/ Drupal/ Component/ FileSystem/ FileSystem.php, line 10
Namespace
Drupal\Component\FileSystemView source
class FileSystem {
/**
* Discovers a writable system-appropriate temporary directory.
*
* @return string|false
* A string containing the path to the temporary directory, or FALSE if no
* suitable temporary directory can be found.
*/
public static function getOsTemporaryDirectory() {
$directories = [];
// 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 (str_starts_with(PHP_OS, '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;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
FileSystem::getOsTemporaryDirectory | public static | function | Discovers a writable system-appropriate temporary directory. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.