如何在PHP中设置文件和目录的属性?

如何在PHP中设置文件和目录的属性?,第1张

inux 命令chmod 755的意思

chmod是Linux下设置文件权限的基运命令,后面的数字表示不同用户或用户组的权限。

一般是三个数字:

第一个数字表示文件所有缓正者的权限

第二个数字表示与文件所有者同属一个用户组的其他用户的权限

第三个数字表示其它用户组的权限。

权限分为三种:读(r=4),写(w=2),执行(x=1) 。 综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。

所以,chmod 755 设置用户的权限为:

1.文件所有者可读可写可执行--7

2.与文件所有者同属一个用户组的其他用户可读可执行 --5

3.其它用户组可读可执行 --5

777权限指的是当前用户可以对相应的文件进行读取、写入和执行的 *** 作,我们建站的时候,有些用户没有对某个文件夹777权限,可能就会造成网站报错搏哪梁,无法正常执行

<?php        

/**      

* PHP中列出目录中的目录和文件的几种方法      

*/       

//兼容PHP4和PHP5的写法        

function getFileList($directory) {        

    $files = array()        

    if(is_dir($directory)) {        

        if($dh = opendir($directory)) {        

            while(($file = readdir($dh)) !== false) {        

                if($file != '.' && $file != '..') {        

                吵哗    $files[] = $file        

                }        

            }    

            closedir($dh)        

        }        

    }        

    return $files        

}        

       

//PHP5中的简单方法        

function getFileList2($directory) {   大培     

    $files = array()        

    if(is_dir($directory)) {        

        if($files = scandir($directory)) {        

            $files = array_slice($files,2)        

        }        

    }        

    return $files        

}        

       

//使用PHP5面向对象的写法        

function getFileList3($directory) {        

    $files = array()        

    try {        

        $dir = new DirectoryIterator($directory)        

    } catch (Exception $e) {        

        throw new Exception($directory . ' is not readable')        

    }        

    foreach($dir as $file) {        

        if($file->isDot()) continue        

        $files[] = $file->getFileName()    升仿行    

    }        

    return $files        

}        

       

//测试代码        

$dir = dirname(__FILE__)        

var_dump(getFileList($dir))        

?>

PHP 获取文件目录权限函数fileperms,使用这个函数可以文件或者目录属性。

例子程序:

<?php

$perms = fileperms('/etc/passwd')

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'

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12260689.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存