好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php批量修改windows目录权限程序 - php高级应用

php批量修改windows目录权限程序

我们经常会碰到一些问题像目录权限无法访问了,这时可能有几百或上千个文件或文件目录,下面我写了一个利用php来批量更改目录权限的实例,代码如下:

<?php  //获取文件目录列表,该方法返回数组   function  getDir( $dir =]) {       $dir = empty empty ( $dir ) ?  getcwd () :  $dir ;       $dirArray []=NULL;       if  (false != ( $handle  = opendir (  $dir  ))) {           $i =0;           while  ( false !== ( $file  = readdir (  $handle  )) ) {               //去掉][.]、[..]以及带[.xxx]后缀的文件                if  ( $file  != [.] &&  $file  != [..]&&! strpos ( $file ,].])) {                   $dirArray [ $i ]= $file ;                   $i ++;              }          }           //关闭句柄            closedir  (  $handle  );      }       return   $dirArray ;  }  ?>  <!DOCTYPE html PUBLIC [- //W3C//DTD XHTML 1.0 Transitional//EN] [http://HdhCmsTestw3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd]>   <html xmlns=]http: //HdhCmsTestw3.org/1999/xhtml]>   <head>  <meta http-equiv=]Content-Type] content=]text/html; charset=utf-8″ />  <title>目录权限批量设置</title>  <style>  body {      font:12px/22px [Microsoft YaHei], SimSun;  }  input, select, texteare, button {      font-family:]Microsoft YaHei], SimSun;  }  </style>  </head>  <body>  <?php   if ( empty empty ( $_POST )){  ?>  <form action=]" method=]post]  onsubmit=] return  check();]>  <h2>当前目录:<?php  echo   getcwd ();?></h2>  <div>    <fieldset>      <legend>网站目录</legend>      <div>        <ul>  <?php          $dirArr =getDir();         if ( is_array ( $dirArr )){             foreach ( $dirArr   as   $dir ){  ?>          <li>            <label>              <input name=]directory[]] type=]checkbox] value=]<?php  echo   $dir ;?>] />             <?php  echo   $dir ;?></label>          </li>  <?php                  }        }  ?>        </ul>          <div>          <input id=]CheckALL] type=]button] onclick=]checkAll();] value=]全选] />          <input id=]NoCheckAll] type=]button] onclick=]noCheckAll();] value=]全不选] />          <input id=]inverse] type=]button] onclick=]inverseCheck()] value=]反选] />           </div>      </div>    </fieldset>  </div>  <div>    <fieldset>      <legend>目录权限</legend>      <div>        <select name=]Perm]>          <option value=]N] selected=]selected]>N-无</option>          <option value=]R]>R-读取</option>          <option value=]W]>W-写入</option>          <option value=]C]>C-更改(写入)</option>          <option value=]F]>F-完全控制</option>        </select>  <!–  /G user:perm  赋予指定用户访问权限。                Perm 可以是: R  读取                            W  写入                            C  更改(写入)                            F  完全控制    /P user:perm  替换指定用户的访问权限。                Perm 可以是: N  无                            R  读取                            W  写入                            C  更改(写入)                            F  完全控制  –>      </div>    </fieldset>  </div>  <div>    <fieldset>      <legend>来宾帐户</legend>      <div>        Internet 来宾帐户: <input name=]User] id=]User] type=]text] value=]" />      </div>    </fieldset>  </div>  <div style=]margin-top:20px; padding-left:20px;]>    <input type=]submit] value=]提交] />  </div>  </form>  <script type=]text/javascript]>       var  all = document.getElementById([CheckALL]);  //全选        var  single = document.getElementsByName([directory[][);  //选项        var  noAll = document.getElementById([NoCheckAll]);  //不全选        var  inverse = document.getElementById([inverse]);  //反选        var  User = document.getElementById([User]);  //SiteId        function  checkTrue() {           for  ( var  i = 0; i < single.length; i++) {              single[i].checked = true;          }      }       function  checkFalse() {           for  ( var  i = 0; i < single.length; i++) {              single[i].checked = false;          }      }       //全选        function  checkAll() {           if  (all.disabled == false) {              noAll.disabled = false;              checkTrue();          }           else  {              noAll.disabled = true;              checkFalse();          }          all.disabled = true;      }       //全不选        function  noCheckAll() {           if  (noAll.disabled == false) {              all.disabled = false;              checkFalse();          }           else  {              all.checked = true;              checkTrue();          }          noAll.disabled = true;      }       //反选        function  inverseCheck() {          noAll.disabled = false;          all.disabled = false;           for  ( var  i = 0; i < single.length; i++) {              single[i].checked = !single[i].checked;          }      }       function  check(){           var  checkd_sum;          checkd_sum=0;           for  ( var  i = 0; i < single.length; i++) {               if (single[i].checked ==true){              checkd_sum++;              }          }           if (checkd_sum==0){              alert(‘请先选择目录!’);               return  false;          }           if (User.value==]"){              alert(‘请输入Internet 来宾帐户!’);               return  false;          }           return  true;      }  </script>  <?php  } else {       $directorys =@ $_POST [ 'directory' ];       $Perm =trim(@ $_POST [ 'Perm' ]);       $User =trim(@ $_POST [ 'User' ]);  ?>  <div>  <pre>  @ echo  off  <?php  $BASE_DIR = getcwd ();  if ( is_array ( $directorys )){       foreach ( $directorys   as   $directory  ){           echo  <<<EOF  echo  Y|cacls { $BASE_DIR }\{ $directory } /T /E /C /G { $User }:{ $Perm } <br/>  EOF;      }  }  ?>  pause  </pre>  </div>  <?php   }  ?>  </body>  </html> 

查看更多关于php批量修改windows目录权限程序 - php高级应用的详细内容...

  阅读:48次