PHP는 내 전공이 아닌데 어쩌다보니 하게 되었습니다.
윈도우 서버의 ASP로 돼 있던 사이트의 파일들을
리눅스 서버의 PHP로 돼 있는 사이트로 옮겨야 하는 일이 생겼습니다.
많은 일들이 일어났는데 희한하게도 한글로 돼 있는 파일들을 인식하지 못하는 문제가 발생하네요.
한글로 돼 있는 파일들을 다 올렸습니다.
이걸 PHP의 move_uploaded_file() 함수를 사용해서 한글이 아닌 다른 이름으로 일괄 변경하려고 합니다.
그런데, file_exists() 함수가 실제 한글로 돼 있는 경로의 파일이 있는데도 없다고 인식을 하네요.
1 2 3 4 5 | if(file_exists("/home/public_html/data/bbs50/1. 법인설립[발기설립]서류일체(29p).hwp")) { echo " 있다."; } else { echo " 없다."; } | cs |
/home/public_html/data/bbs50/1. 법인설립[발기설립]서류일체(29p).hwp
이 파일이 실제로 존재하는데 존재하지 않는다고 자꾸 나옵니다 ㅠ
한참을 헤매다 구글링으로 찾아냈네요.
이럴 땐, conv() 함수를 써서 변경해주니 잘 되네요^^
$filename = iconv( "UTF-8", "EUC-KR", $filename );
1 2 3 4 5 6 | $filename = iconv( "UTF-8", "EUC-KR", "/home/public_html/data/bbs50/1. 법인설립[발기설립]서류일체(29p).hwp" ); if( file_exists( $filename ) ) { echo " 있다."; } else { echo " 없다."; } | cs |
요렇게 하시면 됩니다.
댓글