php直接用basename函数提取uri的中文名称,发现提取出文件名的后缀,中文文件名提取失败。
具体原因不清楚,参考一些资料,用正则表达式也可以达到相同效果:
$filename_v=preg_replace('/^.+[\\\\\\/]/','',$result["video_url"]);
php删除目录下文件:
function deldir($dirname,$filename){
$d=opendir($dirname); //文件目录,这个是相对于deldir函数的相对路径
$name=$dirname.$filename; //删除文件全路径
if(file_exists(iconv('utf-8','gbk',$name))){
unlink(iconv('utf-8','gbk',$name));
}
closedir($d);
}
例如删除:删除文件为: video_url=video/admin/video_upload/视频.mp4
deldir函数在: video/admin/files/delfile.php
则$dirname=../video_upload/
$filename=preg_replace('/^.+[\\\\\\/]/','',$result["video_url"]);