public FileSystem::basename($uri, $suffix = NULL)
Gets the filename from a given path.
PHP's basename() does not properly support streams or filenames beginning with a non-US-ASCII character.
Overrides FileSystemInterface::basename
http://bugs.php.net/bug.php?id=37738
basename()
public function basename($uri, $suffix = NULL) { $separators = '/'; if (DIRECTORY_SEPARATOR != '/') { // For Windows OS add special separator. $separators .= DIRECTORY_SEPARATOR; } // Remove right-most slashes when $uri points to directory. $uri = rtrim($uri, $separators); // Returns the trailing part of the $uri starting after one of the directory // separators. $filename = preg_match('@[^' . preg_quote($separators, '@') . ']+$@', $uri, $matches) ? $matches[0] : ''; // Cuts off a suffix from the filename. if ($suffix) { $filename = preg_replace('@' . preg_quote($suffix, '@') . '$@', '', $filename); } return $filename; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!File!FileSystem.php/function/FileSystem::basename/8.1.x