Зачем использовать basename()
в скриптах PHP, если то, что эта функция действительно делает, может быть написано в 2 строках:
$subFolders = preg_split("!\\\|\\/!ui", $path); // explode on `\` or `/` $name = array_pop($subFolder); // extract last element's value (filename)
Я что-то упускаю?
Однако я думаю, что этот код выше может работать некорректно, если имя файла имеет некоторые \
или /
в нем. Но это невозможно, правда?
PHP может работать во многих разных системах со многими различными файловыми системами и соглашениями об именах. Использование функции типа basename()
гарантирует (или, по крайней мере, должен гарантировать) правильный результат независимо от платформы. Это повышает переносимость кода.
Кроме того, сравните простой вызов basename()
с кодом, который является более читаемым и более очевидным для других программистов в отношении того, что он должен делать?