我正在尝试创建一个脚本,该脚本将在写入文件之前检查文件是否可写,
确保脚本不会过早退出。
我已经走到了这一步
$meta =stream_get_meta_data($file);
while(!is_writable($meta['uri'])){
sleep(rand(0,3));
$meta=stream_get_meta_data($file);
echo("sleeping\n");
}
$csv = fopen($file, 'a+')or die("can't open file");
当我在打开 $file 的情况下测试脚本时,即使在 $file 关闭后,它也会在睡眠部分阻塞。
我对 PHP 相当陌生,所以可能有一个我不知道的处理范例。
任何帮助都会非常受欢迎。
编辑:我将其输入 while 循环的原因是不断检查文件是否打开。因此,只有在文件最终可写时,它才应该退出 while 循环。
睡眠只是为了复制一个试图打开文件的人。