파일정보꺼내기

-주의점-
파일정보에 관련된 함수들은모두 그 결과가 메모리에 저장되어 있는 것들이므로, 항상 위의 함수를 사용하기 전, 후에는 clearstatcache함수를 호출하여 메모리를 비워주어야 한다.


stat
-지정된 파일의 여러가지 정보를 배열로 저장해 주는 함수
이 함수만으로도 파일에 대한 대부분의 정보를 가져올 수 있다
저장될 배열 = stat ("파일이름");

배열원소 7 - 파일의 크기
배열원소 8 - 마지막으로 접근된 시간 (유닉스타임스탬프)
배열원소 9 - 마지막으로 수정된 시간 (상동)

stat함수에서 리턴된 배열은 배열원ㅅ 0-12까지 13개의 정보를 저장하고 있지만
실제로 우리가 사용하는 정보는 위의 3가지 이다.


임의의 test.txt 파일을 서버루트에 만들고
우리가 만든 test.txt파일을 stat함수로 꺼내보자
<?
$file = stat("test.txt");
echo "
파일크기 : $file[7] <br>
마지막 접근시간:$file[8] <br>
마지막수정시간:$file[9] ";
?>
결과는
파일크기 : 13
마지막 접근시간:1232376054
마지막수정시간:1232376054

<?
$file = stat("test.txt");
echo "
파일크기 : $file[7] <br>
마지막 접근시간: ".date('Y-m-d H:i:s', $file[8])." <br>
마지막수정시간: ".date('Y-m-d H:i:s', $file[9]);
?>
결과는
파일크기 : 13
마지막 접근시간: 2009-01-19 23:40:54
마지막수정시간: 2009-01-19 23:40:54



filesize
-파일의 크기를 구하는 함수
filesize ("파일이름");

<?
echo filesize("test.txt");
?>



fileatime
-파일의 마지막 접근 시간을구하는 함수
fileatime("파일이름");

<?
echo date ('Y-m-d H:i:s', fileatime("test.txt"));
?>
결과는 2009-01-19 23:40:54




filemtime
-파일의 마지막 수정시간을 구하는 함수
filemtime ("파일이름");



fileperms
-파일의 퍼미션을 구하는 함수
fileperms ("파일이름");

<?
echo fileperms("test.txt");
?>
결과는 33206
->우리가 알고 있는 707(8진수) 이런 모양이 아닌데
그것은 함수가 10진수의 퍼미션을 알려주기 때문이다.
진수변경함수인 base_convert함수를 사용하여 10->8진수로 변경해야 한다

<?
$perms= fileperms("test.txt");
echo base_convert ($perms, 10, 8);
?>
결과는 100666
-> 퍼미션은 666 이다




file_exists
-어떤 파일이 존재하는지 알아보는 함수
존재하면 true, 없으면 false를 리턴
file_exists ("파일이름");

<?
echo file_exists("test.txt");
?>
결과는 1










+ Recent posts