preg_match에 대해서 문의합니다.
본문
아래에서 preg_match는 어떤 기능을 하는 건가요?
("/(\.gif)$/i"에서 .gif를 .jpg로 바꾸면 jpg파일인지 확인되는 걸까요?
검색해 봐도 자세한 설명을 찾지못해 질문을 올립니다.
// 회원 사진 업로드
$mb_1 = "";
if (is_uploaded_file($_FILES['mb_1']['tmp_name'])) {
if (!preg_match("/(\.gif)$/i", $_FILES['mb_1']['name'])) {
alert($_FILES['mb_1']['name'] . '은(는) gif 파일이 아닙니다.');
}
if (preg_match("/(\.gif)$/i", $_FILES['mb_1']['name'])) {
@mkdir(G5_DATA_PATH.'/member_image/'.$mb_dir, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/member_image/'.$mb_dir, G5_DIR_PERMISSION);
$dest_path = G5_DATA_PATH.'/member_image/'.$mb_dir.'/'.$mb_id.'.gif';
move_uploaded_file($_FILES['mb_1']['tmp_name'], $dest_path);
chmod($dest_path, G5_FILE_PERMISSION);
if (file_exists($dest_path)) {
$size = getimagesize($dest_path);
// 사진의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 사진 삭제
if ($size[0] > $config['cf_1'] || $size[1] > $config['cf_2']) {
@unlink($dest_path);
}
}
}
}
!-->
답변 1
패턴이 일치하는 문자열을 찾는 정규식입니다.
http://php.net/manual/kr/function.preg-match.php
.jpg 로 바꾸면 이미지 파일 확장자가 .jpg 파일인지 확인하는 용도가 되겠죠.
답변을 작성하시기 전에 로그인 해주세요.