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
See also
http://bugs.php.net/bug.php?id=37738
basename()
File
- core/lib/Drupal/Core/File/FileSystem.php, line 149
Class
- FileSystem
- Provides helpers to operate on files and stream wrappers.
Namespace
Drupal\Core\File
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 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 ; } |
Please login to continue.