반업주부의 일상 배움사

[PHP] 업로드 한 이미지의 파일명과 확장자 오류 해결하기 본문

IT 인터넷/PHP

[PHP] 업로드 한 이미지의 파일명과 확장자 오류 해결하기

Banjubu 2020. 6. 11. 12:46
반응형

 

한글명 파일을 업로드 하는 경우 에러날 때 있죠?

가끔씩은 JPG 파일인데 PNG라고 하면서 업로드 하는 경우도 있고요.

그럴 때 사용하세요.

$arr = explode(".", $_FILES['userfile']['name']);
$arr[0] = strval(time()).'_'.strval(rand());
$ext = array_pop($arr);
if(substr($_FILES['userfile']['type'], 0, 5) === 'image')
{// 이미지 타입이라면
    $info = getimagesize($_FILES['userfile']['tmp_name']);
    if($info['mime'] === 'image/png') $ext = 'png';
    else if($info['mime'] === 'image/jpg' || $info['mime'] === 'image/jpeg') $ext = 'jpg';
}
$origin_name = join(".", $arr);
$_FILES['userfile']['name'] = iconv("UTF-8", "cp949", $origin_name.".".$ext);
if(is_null($_FILES['userfile']['name']))
{
    $_FILES['userfile']['name'] = mb_convert_encoding($origin_name.".".$ext, "EUC-KR");
}

 

 

반응형
LIST
Comments