PHP의 Base64 문자열에서 이미지 유형 확인
PHP에서 base64 문자열로 인코딩된 이미지의 파일 유형을 확인하는 것이 가능합니까? ? 불행하게도 인코딩된 문자열만 가지고 있으면 이미지의 원본 파일 형식을 얻는 데 어려움이 있습니다. 이미지 유형을 해독하려면 이미지 리소스를 생성하는 imagecreatefromstring() 함수를 활용할 수 있습니다. 그러나 이 리소스는 PHP의 특수한 표현을 가지고 있어 원본 이미지 유형을 모호하게 만듭니다.
다행히도 PHP FileInfo 확장 프로그램이 해결책을 제공합니다. 이 확장은 base64로 인코딩된 문자열을 포함하여 바이너리 데이터의 파일 형식을 결정하는 간단한 방법을 제공합니다. 작동 방식은 다음과 같습니다.
<code class="php">$encoded_string = "...."; $imgdata = base64_decode($encoded_string); $f = finfo_open(); $mime_type = finfo_buffer($f, $imgdata, FILEINFO_MIME_TYPE);</code>
이 코드 조각은 base64로 인코딩된 문자열을 디코딩하고, FileInfo 리소스를 열고, finfo_buffer() 함수를 사용하여 파일 형식을 가져옵니다. 결과 $mime_type 변수에는 "image/jpeg" 또는 "image/png"와 같은 파일 형식이 포함됩니다. 이 정보를 이용하면 미리 알 필요 없이 원본 파일 형식을 판단할 수 있으며, 이미지를 적절한 파일 형식으로 저장할 수 있습니다.
위 내용은 PHP의 Base64 문자열에서 이미지 유형을 결정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!