<?php

/*제작자 : 유창화
사용제한 : 사용은 자유롭습니다. 단, 강의나 책의 내용으로서 사용될 경우 허락을 받으셔야 합니다.*/


function
Ysave_dir_owner_perm($dir, $debug=false
){

if (!
is_dir($dir)) return false
;

if (!
preg_match("`/$`", $dir)) $dir .= '/'
;

if (
preg_match("`win`i", PHP_OS)) $os = 'windows'
;
else  
$os = 'unix or linux'
;

$text = ''
;

$d = dir($dir
);
while (
false !== ($entry = $d->read
())) {

   if (
substr($entry, 0, 1) == '.'
) continue;

   if (
$os != 'windows') $text .= 'chown ' . fileowner($dir . $entry) . '.' . filegroup($dir . $entry) . ' ' . $dir . $entry . " \n"
;
   
$text .= 'chmod ' . substr(decoct(fileperms($dir . $entry)), -4) . ' ' . $dir . $entry . " \n"
;
   if (
$debug == true
) {
     
     if (
$os != 'windows') echo 'chown ' . fileowner($dir . $entry) . '.' . filegroup($dir . $entry) . ' ' . $dir . $entry . " <br>\n"
;
     echo
'chmod ' . substr(decoct(fileperms($dir . $entry)), -4) . ' ' . $dir . $entry . " <br>\n"
;
   }
   
   if (
is_dir($dir . $entry
)){

     
$text .= Ysave_dir_owner_perm($dir . $entry, $debug
);
   }
   else{

     continue;
   }
}
$d->close
();

return
$text
;
}

function
Ysave_file($file, $text, $perm=0777
){

if (empty(
$file)) return false
;
$fp = @fopen ($file, 'w'
);
if (empty(
$fp)) return false
;

@
fwrite ($fp, $text
);
@
fclose($fp
);

return @
chmod ($file, $perm
);
}

$dir = './'
;
$text = Ysave_dir_owner_perm($dir, true
);
if (
$text == false) echo '디렉토리내의 정보를 읽는데 실패하였습니다.'
;
$save_result = Ysave_file('./temp/owner_perm.txt', $text, 0777
);
if (empty(
$save_result)) echo '파일저장에 실패하였습니다.'
;

?>

샘플 url : http://82da.com/Ybbs/sample/Ysave_dir_owner_perm.php
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 바람부는데로

, ,
Response
No Trackback , No Comment
RSS :
http://apmusers.com/tt/dbckdghk/rss/response/16

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

« Previous : 1 : ... 84 : 85 : 86 : 87 : 88 : 89 : 90 : 91 : 92 : ... 95 : Next »

블로그 이미지

유창화의 블로그(사진은 10년전 모습)

- 바람부는데로

Archives

Calendar

«   2012/02   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      

이올린 추천글

Site Stats

Total hits:
235013
Today:
54
Yesterday:
87