在Python中,有一个很好的约定,强制文件句柄在你完成后关闭:
with open('file', 'r') as myfile:
...do stuff with myfile...
...continued code, after closing...
"这样做的好处是文件在套件完成后正确关闭,即使在途中引发了异常。它也比编写等效的try-finally块短得多#34; (https://docs.python.org/2/tutorial/inputoutput.html)
同样,Clojure显然有with-open构造,所以我假设Java有类似的构造。
我还没有找到PHP中的等效操作 - 我可以在PHP中使用哪种类型的块来同样不必在每fclose
之后处理每个fopen
?
答案 0 :(得分:1)
在PHP中,您必须将其包装在一个函数中。当文件句柄变量超出范围时,文件将关闭。只需为多个文件重复调用该函数。