> 백엔드 개발 > PHP 튜토리얼 > 디스크에 저장하지 않고 단일 스크립트로 이진 데이터의 이미지를 표시하려면 어떻게 해야 합니까?

디스크에 저장하지 않고 단일 스크립트로 이진 데이터의 이미지를 표시하려면 어떻게 해야 합니까?

Patricia Arquette
풀어 주다: 2024-11-08 06:37:02
원래의
1045명이 탐색했습니다.

How can I display an image from binary data in a single script without saving it to disk?

단일 스크립트 내에서 바이너리 데이터의 이미지 생성 및 표시

많은 애플리케이션에는 바이너리 데이터의 이미지를 처리하고 스크립트 없이 표시하는 기능이 필요합니다. 디스크의 중간 저장소. 이 문서에서는 데이터 URI를 사용하여 이 기능을 구현하는 방법을 살펴봅니다.

데이터 URI

데이터 URI는 바이너리 데이터를 HTML 또는 CSS에 직접 포함하는 방법을 제공합니다. 세 부분으로 구성됩니다:

  • MIME 유형: 데이터 유형을 식별합니다(예: "image/png").
  • 선택적 인코딩 : 데이터의 문자 인코딩을 지정합니다(예: "base64").
  • 데이터: 문자열로 인코딩된 바이너리 데이터.

이미지에 데이터 URI 사용

이미지를 데이터 URI로 삽입하려면 다음 형식을 따르세요. 사용됨:

data:[<MIME-type>][;charset="<encoding>"][;base64],<data>
로그인 후 복사

예를 들어 base64 인코딩을 사용하여 PNG 이미지를 데이터 URI로 포함하려면:

data:image/png;base64,<encoded-data>
로그인 후 복사

코드 예

다음 PHP 함수는 바이너리 이미지 파일에서 데이터 URI를 생성합니다.

function data_uri($file, $mime) 
{
  $contents = file_get_contents($file);
  $base64   = base64_encode($contents); 
  return ('data:' . $mime . ';base64,' . $base64);
}
로그인 후 복사

바이너리 데이터에서 이미지를 가져오려면 간단히 데이터 URI를 HTML 요소:

echo "<img src='" . data_uri('image.png', 'image/png') . "' alt='My Image' />";
로그인 후 복사

데이터 URI의 장점

이미지에 데이터 URI를 사용하면 다음과 같은 여러 가지 이점이 있습니다.

  • 네트워크 감소 요청: 데이터 URI는 이미지 데이터를 HTML에 직접 삽입하므로 필요가 없습니다. 추가 HTTP 요청의 경우.
  • 교차 원본 이미지 로드: 데이터 URI를 사용하여 다양한 도메인에서 이미지를 로드하여 CORS 문제를 해결할 수 있습니다.
  • 향상된 성능 : 데이터 URI는 추가 네트워크 요청과 디스크 I/O를 제거하여 이미지의 전반적인 성능을 향상시킬 수 있습니다. 로드중입니다.

위 내용은 디스크에 저장하지 않고 단일 스크립트로 이진 데이터의 이미지를 표시하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿