일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |
Tags
- mysql
- 자바스크립트
- PHP-FPM
- jQuery
- 알뜰폰
- KB국민카드
- OpenWrt
- SKT
- proxmox
- 킹북이초월
- 가상서버호스팅
- KB증권
- iptime
- centos
- 복현오거리
- 리눅스
- 아파치
- 소비전력
- Rocky
- 보르비스초월
- php
- 스톤에이지
- ConoHa
- 시놀로지
- 라즈베리파이2
- 알리익스프레스
- Apache
- 윈도우10
- 티스토리
- 램가스초월
- Today
- Total
맛집 여행 캠핑 일상 생활
PHP 파일 move 함수 본문
728x90
PHP 함수중에 move라는 함수는 없다. move 대신에 rename이라는 함수가 있다.
그리고 rename 말고도 파일을 이동하는 방법은 여러가지가 있다.
1. copy 후 unlink
2. rename 함수 사용
3. exec 함수로 mv 명령어 호출
등등 여러 방법이 있을 것이다.
▶ copy 후 unlink
$FILENAME1 = "./dir1/file.txt";
$FILENAME2 = "./dir2/file.txt";
if(file_exists($FILENAME1)) {
if(copy($FILENAME1, $FILENAME2)) {
unlink($FILENAME1);
}
}
▶ rename 함수 사용
$FILENAME1 = "./dir1/file.txt";
$FILENAME2 = "./dir2/file.txt";
if(file_exists($FILENAME1)) {
rename($FILENAME1, $FILENAME2);
}
▶ exec 함수로 mv 명령어 호출
$FILENAME1 = "./dir1/file.txt";
$FILENAME2 = "./dir2/file.txt";
if(file_exists($FILENAME1)) {
exec("mv ".$FILENAME1." ".$FILENAME2);
}
첫번째 방법은 파일을 복사후 원본을 삭제시키는 방법인데 가장 확실하지만 복사 후 지우기 때문에 속도가 느리다.
여러개의 파일을 옮기려고 한다면 rename 함수나 exec로 mv 명령어를 사용하는게 좋지 않을까 싶다.
그리고 작업시간이 오래걸릴 수도 있으니 아래 코드를 맨 위에 넣어주도록 하자.
set_time_limit(0);
디렉토리가 없으면 만들어 주자.
$DEST_DIR = "./dir2/";
if(!is_dir($DEST_DIR)) {
if(@mkdir($DEST_DIR, 0777, true)) {
if(is_dir($DEST_DIR)) {
@chmod($DEST_DIR, 0777);
}
}
}
없는 디렉토리에 옮길려고 하면 안되니 이부분을 우선 실행해주도록 하자.
728x90
반응형
'LAMP' 카테고리의 다른 글
PHP Allowed memory size 에러 (0) | 2016.03.08 |
---|---|
외부 사이트 이미지 핫링크 차단 (0) | 2016.03.07 |
특정 DDNS 도메인주소 sshd 접근허용하기 (0) | 2016.03.03 |
구글봇 및 검색봇 차단하여 트래픽 줄이기 (0) | 2016.03.02 |
아파치 이미지파일 로그 안나오게 하기 (0) | 2016.03.02 |
Trackback : | Comments :