PHP fileperms() 函数用法及示例

PHP Filesystem 参考手册

fileperms()函数可以返回文件或目录的权限。此函数可以在成功时以数字模式返回权限,在失败时返回false。

语法

int fileperms ( string $filename )

示例1

<?php
   echo substr(sprintf("%o", fileperms("sample.txt")), -4);
?>

输出结果

0666

示例2

<?php
   $perms = fileperms("sample.txt");

   switch($perms & 0xF000) {
      case 0xC000: // socket
         $info = 's';
         break;
      case 0xA000: // symbolic link
         $info = 'l';
         break;
      case 0x8000: // regular
         $info = 'r';
         break;
      case 0x6000: // block special
         $info = 'b';
         break;
      case 0x4000: // directory
         $info = 'd';
         break;
      case 0x2000: // character special
         $info = 'c';
         break;
      case 0x1000: // FIFO pipe
         $info = 'p';
         break;
      default: // 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' : '-'));

   echo $info;
?>
测试看看‹/›

输出结果

rrw-rw-

PHP Filesystem 参考手册