我正在尝试编写一段代码来检查我的文件名是否唯一,如果它没有返回附加了整数的文件名。 所以基本上,如果在我的数据库中我已经有" airco.jpg"在它。
现在,如果我使用" airco.jpg"运行该功能作为输入,我希望它返回 " airco_1.jpg&#34 ;.下一个将是" airco_2.jpg"等等......
这是我到目前为止的代码,它返回" airco.jpg_1"因为文件扩展名。我知道如何切断它,但我不知道如何再次添加它......
function return_unique_filename($filename) {
//Remove the extension
//$filename = pathinfo($filename, PATHINFO_FILENAME);
$CI = get_instance();
$CI->load->model('vacancy/vacancies_model');
if (!$CI->vacancies_model->doesFilenameExist($filename)) {
return $filename;
}
$counter = 1;
while ($CI->vacancies_model->doesFilenameExist($filename . "_" . $counter)) {
$counter++;
}
return $filename . "_" . $counter;
}
答案 0 :(得分:1)
您已经注释掉了文件名部分,您只需要调整它以获得扩展名。
$file = "a.jpg";
$filename = pathinfo($file, PATHINFO_FILENAME);
$ext = pathinfo($file, PATHINFO_EXTENSION);