posix_access
(PHP 5 >= 5.1.0)
posix_access — Determine accessibility of a file
Описание
$file
[, int $mode
= POSIX_F_OK
] )posix_access() checks the user's permission of a file.
Список параметров
-
file
-
The name of the file to be tested.
-
mode
-
A mask consisting of one or more of
POSIX_F_OK
,POSIX_R_OK
,POSIX_W_OK
andPOSIX_X_OK
.POSIX_R_OK
,POSIX_W_OK
andPOSIX_X_OK
request checking whether the file exists and has read, write and execute permissions, respectively.POSIX_F_OK
just requests checking for the existence of the file.
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Примеры
Пример #1 posix_access() example
This example will check if the $file is readable and writable, otherwise will print an error message.
<?php
$file = 'some_file';
if (posix_access($file, POSIX_R_OK | POSIX_W_OK)) {
echo 'The file is readable and writable!';
} else {
$error = posix_get_last_error();
echo "Error $error: " . posix_strerror($error);
}
?>
Примечания
Замечание: Когда опция safe mode включена, PHP проверяет, имеют ли файлы/каталоги, с которыми вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт.
Смотрите также
- posix_get_last_error() - Retrieve the error number set by the last posix function that failed
- posix_strerror() - Retrieve the system error message associated with the given errno
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для управления процессами программ
- POSIX
- posix_access
- posix_ctermid
- posix_errno
- posix_get_last_error
- posix_getcwd
- posix_getegid
- posix_geteuid
- posix_getgid
- posix_getgrgid
- posix_getgrnam
- posix_getgroups
- posix_getlogin
- posix_getpgid
- posix_getpgrp
- posix_getpid
- posix_getppid
- posix_getpwnam
- posix_getpwuid
- posix_getrlimit
- posix_getsid
- posix_getuid
- posix_initgroups
- posix_isatty
- posix_kill
- posix_mkfifo
- posix_mknod
- posix_setegid
- posix_seteuid
- posix_setgid
- posix_setpgid
- posix_setrlimit
- posix_setsid
- posix_setuid
- posix_strerror
- posix_times
- posix_ttyname
- posix_uname
Коментарии
It should be noted that this function performs access checks based on the real UID and real GID of the process running PHP. These aren't necessarily the same as the effective UID and GID.
In other words, it may well be that access() returns “true” for a particular permission, but an fopen() operation which requires the same permission will fail, and vice versa.
Keep that in mind if you use access() for such checks.