网络请求上传文件,可使用php系统变量$_FILES[$paramName][$infoName]来获取相应数据。分析:$paramName为上传文件所使用的的参数名,$infoName为所需获取的信息类型('name'文件原名,'type'文件类型,'size'文件大小,'tmp_name'服务器临时存储此文件的文件名,'error'文件上传相关的错误代码...)。
例:$fileName为不包含后缀名的文件名
$splitNames = explode(".", $_FILES['excel']['name']);//将文件原名按.分割打成字符串数组
unset($splitNames[count($splitNames)-1]); //抹掉文件后缀名数据
$fileName = implode('.', $splitNames);//将抹掉后缀名的数组拼接成文件名
2.本地文件,本地文件肯定需要提供文件路径
例:$fileName为不包含后缀名的文件名
$filePath = "文件路径";//文件路径
$splitPaths = explode("\", $filePath);
$fileFullName = $splitPaths[count($splitPaths)-1];//获取文件全名
$splitNames = explode(".", $_FILES['excel']['name']);//将文件全名按.分割打成字符串数组
unset($splitNames[count($splitNames)-1]);//抹掉文件后缀名数据
$fileName = implode('.', $splitNames);//将抹掉后缀名的数组拼接成文件名
方法如下:
$dh = opendir($dirname);
$n = 0;
while ($file=readdir($dh)){
// $file为目录下所有文件和文件夹,
// 需要注意默认有 .(本目录)和..(上级目录)这两个特殊文件夹
if (is_file($file)){
//只处理文件
if (!strpos($file,'.')){
// 无后缀名的文件
}
$n++; // 计数
}
}
$phpself =$_SERVER['PHP_SELF']; //获取当前文件名
$str = end(explode("/",$phpself)); //去掉'/'
echo $str.""; //输出文件全名
echo substr($str,0,strrpos($str, '.'))."";//不带扩展名的文件名
echo strrchr($str, "."); //文件扩展名
?>
可以实现的方法有很多
print_r(pathinfo(文件名或路径));
如果不想这样就要 自己写个 函数了
function aa($a){
$b=pathinfo($a);
return $b['filename'];
}
pathinfo($url); 试试