|
Последние активные темы форума |
|
fileperms
(PHP 3, PHP 4 , PHP 5) fileperms -- Получить информацию о правах на файл
Описаниеint fileperms ( string filename ) Функция возвращает информацию о правах на указанный файл или
FALSE в случае возникновения ошибки.
Замечание: Результаты этой функции
кэшируются. Более подробную информацию смотрите в разделе
clearstatcache().
Подсказка: Начиная с
PHP 5.0.0, эта функция также может быть
использована с некоторыми упаковщиками url.
Список упаковщиков, поддерживаемых семейством функций
stat(), смотрите в Прил. L.
Пример 1. Display permissions as an octal value
<?php
echo
substr
(
sprintf
(
'%o'
,
fileperms
(
'/tmp'
)), -
4
);
echo
substr
(
sprintf
(
'%o'
,
fileperms
(
'/etc/passwd'
)), -
4
);
?>
|
This would produce the output: |
Пример 2. Display full permissions
<?php
$perms
=
fileperms
(
'/etc/passwd'
);
if ((
$perms
&
0xC000
) ==
0xC000
) {
// Сокет
$info
=
's'
;
} elseif ((
$perms
&
0xA000
) ==
0xA000
) {
// Символическая ссылка
$info
=
'l'
;
} elseif ((
$perms
&
0x8000
) ==
0x8000
) {
// Обычный
$info
=
'-'
;
} elseif ((
$perms
&
0x6000
) ==
0x6000
) {
// Специальный блок
$info
=
'b'
;
} elseif ((
$perms
&
0x4000
) ==
0x4000
) {
// Директория
$info
=
'd'
;
} elseif ((
$perms
&
0x2000
) ==
0x2000
) {
// Специальный символ
$info
=
'c'
;
} elseif ((
$perms
&
0x1000
) ==
0x1000
) {
// Поток FIFO
$info
=
'p'
;
} else {
// Неизвестный
$info
=
'u'
;
}
// Владелец
$info
.= ((
$perms
&
0x0100
) ?
'r'
:
'-'
);
$info
.= ((
$perms
&
0x0080
) ?
'w'
:
'-'
);
$info
.= ((
$perms
&
0x0040
) ?
((
$perms
&
0x0800
) ?
's'
:
'x'
) :
((
$perms
&
0x0800
) ?
'S'
:
'-'
));
// Группа
$info
.= ((
$perms
&
0x0020
) ?
'r'
:
'-'
);
$info
.= ((
$perms
&
0x0010
) ?
'w'
:
'-'
);
$info
.= ((
$perms
&
0x0008
) ?
((
$perms
&
0x0400
) ?
's'
:
'x'
) :
((
$perms
&
0x0400
) ?
'S'
:
'-'
));
// Мир
$info
.= ((
$perms
&
0x0004
) ?
'r'
:
'-'
);
$info
.= ((
$perms
&
0x0002
) ?
'w'
:
'-'
);
$info
.= ((
$perms
&
0x0001
) ?
((
$perms
&
0x0200
) ?
't'
:
'x'
) :
((
$perms
&
0x0200
) ?
'T'
:
'-'
));
echo
$info
;
?>
|
Результат: |
См.также описания функций is_readable()
и stat()
|