用PHP检测rmdir错误

Poe*_*Poe 3 php rmdir

rmdir()显示一些警告,例如目录不存在或权限不允许。如何捕获失败的原因并做出反应?

gin*_*tas 6

rmdir不会引发异常,因此您无法使用try / catch捕获它们。您可以使用error_get_last函数执行所需的操作。

尝试这样的事情:

if (!@rmdir('/root')) {
    $error = error_get_last();

    if (preg_match('/something/', $error['message'])) {
        // do something
    } elseif (preg_match('/somethingelse/', $error['message'])) {
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)