0

我正在使用 php 来管理一堆硬盘。由于我使用的框架仅适用于 php,因此我有点卡在这种语言上。所以我的问题是:给定一个开放式的:

$fp = fopen(somefile,somemode);

如果写入失败,我如何捕获 ENOSPC 错误?

我能想到的一个选择是这样的:

$oldlvl = error_reporting(0);
if(fwrite($fp, $somedata)<=0){
    $error = error_get_last();
    if(strpos(strtolower($error['message']),"no space left on device")!==false){
        // handle no space error!!!!!
    }
}
error_reporting($oldlvl);

通过不解析错误消息本身,有人有更好的方法吗?

4

0 回答 0