파일 다루기
파일복사
/file/7.php
1 2 3 4 5 6 7 8 | <?php $file = 'readme.txt' ; $newfile = 'example.txt.bak' ; if (! copy ( $file , $newfile )) { echo "failed to copy $file...\n" ; } ?> |
파일삭제
1 2 3 | <?php unlink( 'deleteme.txt' ); ?> |
읽고 쓰기
file_get_contents
1.php
1.php 파일과 같은 디렉토리에 readme.txt 파일이 존재해야 한다.
1 2 3 4 | <?php $file = './readme.txt' ; echo file_get_contents ( $file ); ?> |
file_put_contents
2.php
1 2 3 4 | <?php $file = './writeme.txt' ; file_put_contents ( $file , 'coding everybody' ); ?> |
좀 더 고급스러운 파일 제어를 원한다면 fopen을 참조하자.
네트웍크를 통해서 데이터 읽어오기
1 2 3 4 | <?php echo $homepage ; ?> |
파일을 다루는 과정에서 발생할 수 있는 문제들
권한
파일을 읽고 쓸 때 권한의 문제로 오류가 발생할 수 있다. 권한에 대한 문제는 다소 복잡하기 때문에 동영상 강의를 참고한다.
아래 코드는 특정 파일이 읽을 수 있는 상태인지를 확인한다.
/file/4.php
1 2 3 4 5 6 7 8 | <?php $filename = 'readme.txt' ; if ( is_readable ( $filename )) { echo 'The file is readable' ; } else { echo 'The file is not readable' ; } ?> |
다음 코드는 특정 파일이 쓰기가 가능한지 확인한다.
/file/5.php
1 2 3 4 5 6 7 8 | <?php $filename = 'writeme.txt' ; if ( is_writable ( $filename )) { echo 'The file is writable' ; } else { echo 'The file is not writable' ; } ?> |
아래는 파일의 존재 여부를 확인한다.
/file/6.php
1 2 3 4 5 6 7 8 | <?php $filename = 'readme.txt' ; if ( file_exists ( $filename )) { echo "The file $filename exists" ; } else { echo "The file $filename is not exists" ; } ?> |
참고
file_get_contents, file_put_content를 사용할 수 없는 경우라면 fread, fwrite 함수를 사용해야 한다. 자세한 내용은 다음 링크를 참고한다.