鉴于大家对PHP十分关注,我们编辑小组在此为大家搜集整理了“php将fileterms函数返回的结果变成可读的形式”一文,供大家参考学习
复制代码 代码如下:
function perms_str($perms){
if (($perms & 0xC000) == 0xC000) {
// Socket
$info = ''s'';
} elseif (($perms & 0xA000) == 0xA000) {
// Symbolic Link
$info = ''l'';
} elseif (($perms & 0x8000) == 0x8000) {
// Regular
$info = ''-'';
} elseif (($perms & 0x6000) == 0x6000) {
// Block special
$info = ''b'';
} elseif (($perms & 0x4000) == 0x4000) {
// Directory
$info = ''d'';
} elseif (($perms & 0x2000) == 0x2000) {
// Character special
$info = ''c'';
} elseif (($perms & 0x1000) == 0x1000) {
// FIFO pipe
$info = ''p'';
} else {
// Unknown
$info = ''u'';
}
// Owner
$info .= (($perms & 0x0100) ? ''r'' : ''-'');
$info .= (($perms & 0x0080) ? ''w'' : ''-'');
$info .= (($perms & 0x0040) ?
(($perms & 0x0800) ? ''s'' : ''x'' ) :
(($perms & 0x0800) ? ''S'' : ''-''));
// Group
$info .= (($perms & 0x0020) ? ''r'' : ''-'');
$info .= (($perms & 0x0010) ? ''w'' : ''-'');
$info .= (($perms & 0x0008) ?
(($perms & 0x0400) ? ''s'' : ''x'' ) :
(($perms & 0x0400) ? ''S'' : ''-''));
// World
$info .= (($perms & 0x0004) ? ''r'' : ''-'');
$info .= (($perms & 0x0002) ? ''w'' : ''-'');
$info .= (($perms & 0x0001) ?
(($perms & 0x0200) ? ''t'' : ''x'' ) :
(($perms & 0x0200) ? ''T'' : ''-''));
return $info;
}