Проверка файлов в безопасном режиме PhP Linux

у меня есть простая проверка в моем загрузчике, которая должна проверить, доступен ли каталог для записи.

Я делаю это в настоящее время с функцией http://php.net/manual/en/function.is-writable.php

Но как указано в документации:

Имейте в виду, что PHP может обращаться к файлу как к идентификатору пользователя, который
веб-сервер работает как (часто «никто»). Ограничения безопасного режима не
учтено.

Он игнорирует случай, когда linux переходит в безопасный режим, который произошел у нас 1 месяц назад, функция вернула true, даже если запись в файл была невозможна, поскольку игнорирует безопасный режим (где большинство файловых систем получают статус «нет владельца»). )

Теперь, как я могу правильно обработать этот безопасный режим и позволить моим сценариям умереть, не создавая новый файл при каждой проверке (может привести к безумным проблемам с производительностью) ???

1

Решение

Ты можешь использовать стат () функция или fileperms () функционировать так

function isWritable($file) {
$perms = fileperms($file);
if (is_writable($file)
|| ($perms & 0x0080)  // owner writable
|| ($perms & 0x0010)  // group writable
|| ($perms & 0x0002)) // world writable
return true;
}
1

Другие решения

Других решений пока нет …