I was trying to work out the difference between this and getBasename (http://php.net/manual/splfileinfo.getbasename.php) and the only difference I could really see was a special case of a file in the filesystem root with the root specified:<?phpfunction getInfo($reference){ $file = new SplFileInfo($reference); var_dump($file->getFilename()); var_dump($file->getBasename());}$test = [ '/path/to/file.txt', '/path/to/file', '/path/to/', 'path/to/file.txt', 'path/to/file', 'file.txt', '/file.txt', '/file',];foreach ($test as $file) { getInfo($file);}// will return:/*string(8) "file.txt"string(8) "file.txt"string(4) "file"string(4) "file"string(2) "to"string(2) "to"string(8) "file.txt"string(8) "file.txt"string(4) "file"string(4) "file"string(8) "file.txt"string(8) "file.txt"string(9) "/file.txt" // see how getFilename includes the '/'string(8) "file.txt" // but getBasename doesn'tstring(5) "/file" // ditto getFilenamestring(4) "file" // ditto getBasename*/?>