}
/**
- * normalize a path
- *
+ * @brief Fix common problems with a file path
* @param string $path
* @param bool $stripTrailingSlash
* @return string
if ($path == '') {
return '/';
}
-//no windows style slashes
+ //no windows style slashes
$path = str_replace('\\', '/', $path);
-//add leading slash
+ //add leading slash
if ($path[0] !== '/') {
$path = '/' . $path;
}
-//remove duplicate slashes
+ //remove duplicate slashes
while (strpos($path, '//') !== false) {
$path = str_replace('//', '/', $path);
}
-//remove trailing slash
+ //remove trailing slash
if ($stripTrailingSlash and strlen($path) > 1 and substr($path, -1, 1) === '/') {
$path = substr($path, 0, -1);
}
-//normalize unicode if possible
+ //normalize unicode if possible
if (class_exists('Normalizer')) {
$path = \Normalizer::normalize($path);
}