У меня есть файл .bat, который кодирует mp3-файл на стороне сервера, и у меня также есть функция php, которая проверяет, существует ли файл, а затем добавляет его в качестве элемента списка HTML. Проблема, с которой я сталкиваюсь - иногда файл mp3 не кодируется на стороне сервера. Если кто-то попытается загрузить файл, пока он находится в процессе кодирования, это приведет к сбою браузера.
Могу ли я проверить, чтобы убедиться, что размер файла увеличен, прежде чем перечислять элемент?
Вот функция, которая проверяет, существует ли файл:
function ListDir($dir_handle,$path) {
global $listing;
echo "<ul>";
while (false !== ($file = readdir($dir_handle))) {
$dir =$path . $file;
if(is_dir($dir) && $file != '.' && $file !='..' && filesize($file) {
$handle = @opendir($dir) or die("Unable to open file $file");
echo "<li>".$dir;
ListDir($handle, $dir);
echo "</li>";
} elseif($file != '.' && $file !='..' && $file !='.htaccess') {
$new_string = ereg_replace("[^A-Za-z.]", "", $file);
echo '<li><a href="'. str_replace('wav', 'mp3', $dir) .'">'.str_replace('wav', 'mp3', $new_string).'</a></li>';
}
}
echo "</ul>";
closedir($dir_handle);
}