我理解使用PHP的basename()
函数可以从类似的路径中删除已知的文件扩展名,
basename('path/to/file.php','.php')
但如果您不知道文件的扩展名或扩展名的长度怎么办?我该如何做到这一点?
提前致谢!
答案 0 :(得分:9)
pathinfo()
,但是我想在PHP 5.2中添加 它还有一种简单的方法来访问文件名而没有扩展名。
$filename = pathinfo('path/to/file.php', PATHINFO_FILENAME);
$filename
的值为file
。
答案 1 :(得分:4)
您可以使用pathinfo提取扩展程序并将其删除。
// $filepath = '/path/to/some/file.txt';
$ext = pathinfo($filepath, PATHINFO_EXTENSION);
$basename = basename($filepath, ".$ext");
请注意.
$ext
答案 2 :(得分:0)
$filename = preg_replace('@\.([^\.]+)$@', '', $filename);
答案 3 :(得分:0)
试试这个: -
$path = 'path/to/file.php';
$pathParts = pathinfo( $path );
$pathWihoutExt = $pathParts['dirname'] . DIRECTORY_SEPARATOR . $pathParts['filename'];
答案 4 :(得分:0)
你可以试试这个:
$filepath = 'path/to/file.extension';
$extension = strtolower(substr(strrchr($filepath, '.'), 1));