본문 바로가기
Study/php

PHP 기초] 간단한 파일제어

by Answer Choi 2015. 9. 25.
반응형

php에서 파일을 제어하려면 fopen(), fread(), fwrite()등을 써야 하지만 간단하게


file_put_contents()file_get_contents()를 사용할 수 도 있습니다.


먼저 파일을 하나 만들어서 내용을 적고, 다시 가져오는 걸 해보겠습니다.

1
2
3
4
5
6
7
8
9
10
<html>
<link rel="stylesheet" href="/css/master.css" media="screen" title="no title" charset="utf-8">
<body>
  <?php
  $file = "./newfile.txt";
  file_put_contents($file,'Hello It is my first text file.');
  echo file_get_contents($file);
?>
</body>
</html>
cs


Line 5에 사용할 파일명과 경로를 적어주고, Line 6에서 파일에 text를 넣었습니다.


file_put_contents(파일경로, 입력할 내용)


그리고 Line 7에서 적은 내용을 화면에 뿌립니다.


file_get_contents(불러올 파일경로)


결과는



브라우저에 아까 적었던 내용이 그대로 출력이 되었고, 폴더안에 newfile.txt파일이 생성되었습니다.


만약 파일 생성이 안된다면 권한을 설정해야 합니다.


생성하려는 폴더에서 chmod로 권한을 부여해 주세요.


1
chmod -777 /var/www/html
cs


이제 파일복사와 파일 제거 그리고, 파일 존재여부를 알아보겠습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<html>
<link rel="stylesheet" href="/css/master.css" media="screen" title="no title" charset="utf-8">
<body>
  <?php
  $file = "./newfile.txt";
  $file2="./newfile2.txt";
 
  if(file_exists($file)){
    echo $file.'=> '.file_get_contents($file).'<br>';
    copy($file,$file2);
    echo 'file copying <br>';
    if(file_exists($file2)){
      echo $file2.'=> '.file_get_contents($file2).'<br>';
    }
    unlink($file);
    echo $file.' deleting <br>';
    if(!file_exists($file)){
 
      echo $file.'=> not exists <br>';
    }
  }
?>
</body>
</html>
cs


예제가 좀 길어졌는데 일단 앞서 file을 만들었습니다.(newfile.txt)


그리고 복사할 파일명을 하나 선언해 줍니다.(Line 6)


Line 8 file_exists(파일명)은 파일이 존재하는 지를 알려줍니다.


존재한다면 Line 9에서 뿌려주고,


Line 10 copy(원본파일명, 사본파일명)을 하게되면 원본에서 사본으로 복사가 됩니다.


Line 12에서 사본파일이 있는지를 확인하고, 있으면 Line 13에서 내용을 뿌려줍니다.


원본과 사본의 내용이 같아야 겠죠?


그리고 Line 15 unlink(파일명)은 파일을 삭제해 줍니다.


결과를 보시면




실제 탐색기에서도 사본파일인 newfile2.txt만 남아있는걸 확인할 수 있습니다.

반응형

'Study > php' 카테고리의 다른 글

PHP 기초 ] 폴더제어  (0) 2015.09.30
PHP 기초 ] 파일제어 2  (0) 2015.09.30
PHP 기초 ] include, namespace  (0) 2015.09.24
PHP 기초] 함수  (0) 2015.09.24
PHP 기초 ] 배열  (1) 2015.09.24

인기글