这是我到目前为止的代码,我想知道它是否正确?
$handle = fopen($file, 'w') or die("can't open file");
$closed = fclose($handle);
while($closed){
DOAWESOMETHINGS(); // btw I only want to have this run once for each handle
$closed = false;
}
非常感谢你!
答案 0 :(得分:11)
您可以使用此声明检查句柄是否已关闭
if(!is_resource($handle)){
//Handle closed
}else{
//Handle still open
}
因此,如果在运行下一个函数之前需要确保fclose有效,可以使用此循环:
while(is_resource($handle)){
//Handle still open
fclose($handle);
}
do_awesome_things();
注意:您还应该在需要时使用break;
结束while循环。在这种情况下,在句柄关闭之前,循环不会结束。