zoukankan      html  css  js  c++  java
  • 如何用代码来修改目录的权限

    chmod() 函数改变文件模式。chmod — Changes file mode

    如果成功则返回 TRUE,否则返回 FALSE

    语法
    chmod(file,mode)参数 描述 
    file 必需。规定要检查的文件。 
    mode 可选。规定新的权限。

    mode 参数由 4 个数字组成:

    第一个数字永远是 0 
    第二个数字规定所有者的权限 
    第二个数字规定所有者所属的用户组的权限 
    第四个数字规定其他所有人的权限 
    可能的值(如需设置多个权限,请对下面的数字进行总计):

    1 - 执行权限 
    2 - 写权限 
    4 - 读权限 
     


    来看个简单的实例

    <?php教程
    chmod("/somedir/somefile", 755);   // decimal; probably incorrect
    chmod("/somedir/somefile", "u+rwx,go+rx"); // string; incorrect
    chmod("/somedir/somefile", 0755-2881064151);  // octal; correct value of mode
    ?>

    改进递归文件模式@ infosoft ....,这是一个小短,应处理的Linux文件系统的所有文件类型。这个可以批量更改文件或目录的权限

    <?php
    function chmodr($path, $filemode) { 
        if (!is_dir($path)) 
            return chmod($path, $filemode);

        $dh = opendir($path); 
        while (($file = readdir($dh)) !== false) { 
            if($file != '.' && $file != '..') { 
                $fullpath = $path.'/'.$file; 
                if(is_link($fullpath)) 
                    return FALSE; 
                elseif(!is_dir($fullpath) && !chmod($fullpath, $filemode)) 
                        return FALSE; 
                elseif(!chmodr($fullpath, $filemode)) 
                    return FALSE; 
            } 
        }

        closedir($dh);

        if(chmod($path, $filemode)) 
            return TRUE; 
        else 
            return FALSE; 
    }
    ?>

    如果你目录太多的话可以用

    <?php 
    $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($pathname), RecursiveIteratorIterator::SELF_FIRST);

    foreach($iterator as $item) { 
        chmod($item, $filemode); 

    ?>

    这段代码来修改目录的权限

  • 相关阅读:
    11 数值的整数次方
    10 二进制中1的个数
    6 重建二叉树
    5 从尾到头打印链表
    计算机网络面试题
    Http和Https的区别
    UVALive 7749 Convex Contour (计算几何)
    Gym 101190H Hard Refactoring (模拟坑题)
    UVa 11324 The Largest Clique (强连通分量+DP)
    HDU 6006 Engineer Assignment (状压DP)
  • 原文地址:https://www.cnblogs.com/cbryge/p/6015613.html
Copyright © 2011-2022 走看看