PHP chmod函数与批量修改文件目录权限

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);  // 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);
}
?>

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

哈哈,我们不只是讲chmod简单语法,而且还做了复杂的关于chmod使用实例

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索权限
, 递归
, 文件
, 实例
, 函数
参数
chmod 批量修改权限、chmod目录权限、linux chmod 目录权限、chmod修改目录权限、chmod目录内所有权限,以便于您获取更多的相关知识。

时间: 2024-08-02 16:56:42

PHP chmod函数与批量修改文件目录权限的相关文章

PHP chmod 函数与批量修改文件目录权限_php基础

语法 chmod(file,mode)参数 描述 file 必需.规定要检查的文件. mode 可选.规定新的权限. mode 参数由 4 个数字组成: 第一个数字永远是 0 第二个数字规定所有者的权限 第二个数字规定所有者所属的用户组的权限 第四个数字规定其他所有人的权限 可能的值(如需设置多个权限,请对下面的数字进行总计): 1 - 执行权限 2 - 写权限 4 - 读权限 来看个简单的实例 复制代码 代码如下: <?php chmod("/somedir/somefile"

Linux中修改文件目录权限命令chmod

chmod是一个用来改变文件或目录权限的命令:记得博主看黑客军团美剧的时候,第一集系统被入侵的时候,主角就使用过chmod命令. 当使用#ls -l或ll命令时,即可看到当前的文件目录的权限,-rwxrwxrwx即表示权限. 先说一下理论的东西,后面在说明整行字段的含义. 文件系统上的权限是指文件系统上的文件和目录的权限,文件系统上的权限主要针对三类对象(访问者)进行定义: owner:属主,u group:数组,g other:其他,o   每个文件针对每类访问者都定义了三种权限: r:rea

使用 phpmyadmin 批量修改 Wordpress 注册用户权限

想到要修改注册用户权限是因为前两天 ppiOS问答 被一位恶意用户发布了一篇恶意的黑帽SEO文章.虽然我已经在 ppiOS问答 后台设置了用户提交的问题默认处于草稿状态,但是这个恶意发文章的用户显然是了解 Wordpress 机制的.尽管没有提供后台接口,但是他还是成功的跳过管理员的审核发布了一篇软文.我发现后第一时间就想到:糟糕,用户权限没有分配好! 之前不了解 Wordpress 的用户注册机制,为了方便用户提问我把新用户注册后的角色统一的设置成了作者,没想到这次却被人利用了这个漏洞.痛定思

用Excel函数简化批量导入AD用户及修改密码

近期公司的AD和Exchange项目如预期的进展还不错,赶上AD用户的批量导入,5K用户,工作量很大哦,还好无意间看到一篇blog,讲借助Excel函数简化表格的输入操作,试用了下还不错,修改后分享给大家,增加图文操作哦,原blog是没有的哦...,废话不多说转入正题.... 通过脚本的方式批量的导入AD账户,或者批量修改密码.方法很多的,网上教程也很多,不少朋友都知道,就是Windows自带的几个CMD命令.就不再过多废话这如何通过命令编辑脚本来实现这个功能了,如果真有需要,大家可以Googl

linux中CHMOD命令修改目录权限数字含义

以下是使用绝对模式修改目录权限常见数字代表的含义示例: 模式 意义 777 所有用户都对文件具有读.写和执行权限 755 文件所有者对文件具有读.写和执行权限;组用户和其他用户对文件需有读和执行权限 711 文件所有者对文件具有读.写和执行权限;组用户和其他用户对文件具有执行权限 644 文件所有者可以读.写文件;组用户和其他用户可以读文件 640 文件所有者可以读.写文件;组用户可以读文件;其他用户不能访问文件   另一种常见的符号模式含义: who 用户类型 意义 u User 文件的所有者

如何在Windows7中批量修改文件和文件夹的权限

  很多人在使用 Windows 7 专业版/企业版或旗舰版的时候会发现这样一个问题:如果希望对多个文件夹或文件设置权限,在选中这些文件夹和文件之后,点击鼠标右键,选择"属性",在"属性"对话框中只有"常规"和"自定义"两个选项卡,没有在之前版本的 Windows 中常见的安全选项卡.因此无法对这些文件夹或文件批量的进行权限修改. 操作步骤: 在选择多个文件或文件夹之后,属性对话框中没有"安全"选项卡,是设

Ubuntu如何查看和批量修改文件编码

我们都知道在Windows下文件编码默认为gbk或者是gb2312,但很多用户有时需要把Windows下的文件移到Linux系统中,所以转移后就经常出现乱码的情况,这该怎么办呢?接下来小编就给大家介绍下Ubuntu查看和批量修改文件编码的方法. 使用enca工具可以进行文件编码的查看. Ubuntu下的安装命令: sudo apt-get install enca enca查看文件 enca -L zh_CN file 查看文件编码 enca -L zh_CN -x UTF-8 file 更改文

Linux服务器开发之:chmod()函数,chmod命令,以及文件屏蔽umask命令,程序修改umask,详细介绍+案例演示

 1.依赖的头文件 #include<sys/stat.h> 2.函数定义: //通过传入path中给定的文件名的方式来改变文件制定的权限 int chmod(const char *path,mode_t mode); //通过传入文件描述符的方式为一个文件重设权限 int fchmod(int fd,mode_t mode); 注意:如果使用Linux的chmod命令时,得有root权限 3.关于mode_t的定义:   A:mode_t的定义实际就是unsigned int 形式的

nodejs批量修改文件编码格式_node.js

摘要: 最近在制作手册的时候遇到了一个问题'文档乱码',查看文件之后发现文件编码不对,总共100多个文件,如果用编辑器另存为utf8,那就悲催了.所以自己就写了个程序,批量修改文件编码格式. 代码: 复制代码 代码如下: /**  * 修改文件编码格式,例如:GBK转UTF8  * 支持多级目录  * @param {String} [root_path] [需要进行转码的文件路径]  * @param {Array}  [file_type] [需要进行转码的文件格式,比如html文件]  *