оператор if — функция PHP Sleep () не работает, иначе stament продолжит чтение старого файла

ignore_user_abort();
set_time_limit(0);
$interval=60;
$flag=true;
file_put_contents("log.log","Starts \r\n");

while($flag){

date_default_timezone_set("America/New_York");
$mytime=date("y/m/d h:i:sa");
$file = fopen("C:/work/testData/test.txt","r");
$myfile=fread($file,filesize("C:/work/testData/test.txt"));

if(stristr($myfile,"Finish writing tables")){
file_put_contents("log.log","Finished! Ready To Send Email $mytime         \r\n",FILE_APPEND);
$flag=false;
}else{
file_put_contents("log.log","Still Running $mytime $myfile     \r\n",FILE_APPEND);
}

fclose($file);
sleep($interval);
}

Я хочу, чтобы код читал test.txt каждые 60 секунд, после того как test.txt включит строку «Завершить запись таблиц», а затем остановится. Файл test.txt обновляется другим приложением одновременно. И я обнаружил, что в else {} каждые 60 секунд он не читал обновленный файл test.txt, все еще читал старый test.txt

большое спасибо

0

Решение

задача решена.

Добавьте clearstatcache () после fclose ()

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]