我想从文件名中删除扩展名,并获取文件名 - 例如file.xml - > file,image.jpeg - > image,test.march.txt - > test.march等.
所以我写了这个函数
function strip_extension($filename) {
$dotpos = strrpos($filename, ".");
if ($dotpos === false) {
$result = $filename;
}
else {
$result = substr($filename,0,$dotpos);
}
return $result;
}
Run Code Online (Sandbox Code Playgroud)
返回一个空字符串.
我看不出我做错了什么?
Bra*_*tie 22
寻找pathinfo
我相信.从手册:
<?php
$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');
echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // since PHP 5.2.0
?>
Run Code Online (Sandbox Code Playgroud)
结果:
/www/htdocs/inc
lib.inc.php
php
lib.inc
Run Code Online (Sandbox Code Playgroud)
让自己头疼并使用已经构建的功能.;-)
你应该用pathinfo
它来做那件事.
示例:
使用的东西:pathinfo()
$name = 'file.php';
$pathInfo = pathinfo($name);
echo 'Name: '. $pathInfo['filename'];
Run Code Online (Sandbox Code Playgroud)
结果:
Name: file
Run Code Online (Sandbox Code Playgroud)
例2(更短)
$name = 'file.php';
$fileName= pathinfo($name, PATHINFO_FILENAME );
echo "Name: {$fileName}";
Run Code Online (Sandbox Code Playgroud)
结果:
Name: file
Run Code Online (Sandbox Code Playgroud)