[PHP] 한글 파일명 변환 정규식
한글 파일명을 가진 파일을 php를 이용해 업로드할 때 다른 문자로 치환 후 저장하는 방법을 구상했다.
파일명에는 공백도 있을 수 있고 특수문자도 있을 수 있다는 가정했다. 아래는 공백과 특수문자를 제거하고
한글파일명을 인코딩해서 결과물을 보여주는 코드이다.
<?
$filename = preg_replace(“/s+/”, “”, $filename); // 공백제거
$filename = preg_replace(“/[#&+-%@=/\:;,'”^`~|!?*$#<>()[]{}]/”, “”, $filename); // 특수문자 제거$filename = preg_replace_callback(
“/[가-힣]+/”,
create_function(‘$matches’, ‘return base64_encode($matches[0]);’),
$filename);echo $filename;
?>
특수문자 제거에는 _와 . 은 제외시켰다.
저도 좀 쓰겠습니다 ㅎㅎ
뭔가 부족한 코드를.. ^^;