这个php代码循环通过txt文件来检查它是否包含一些字符串。 txt文件由另一个应用程序提供。
当我运行此代码时,我将首先得到txt字符串,60秒后我得到相同的txt字符串。该文件正在被写入,因此内容应该已经更改。
为什么每60秒输出一次相同的字符串?
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);
}