문제:
이미지를 바이너리 데이터에서 직접 재생성하고 표시할 수 있습니까? 같은 스크립트? 여기에는 HTML 이미지 태그에 데이터를 표시하기 전에 GD 또는 유사한 도구를 사용하여 데이터를 처리하는 작업이 포함됩니다. 목표는 처리된 이미지를 디스크에 저장하거나 외부 스크립트를 사용하지 않는 것입니다.
해결책:
이는 이미지 소스 속성의 데이터 URI를 사용하여 달성할 수 있습니다. 데이터 URI 형식은 다음과 같습니다.
data:[<MIME-type>][;charset="<encoding>"][;base64],<data>
이 PHP 함수는 파일에서 데이터 URI를 생성합니다.
function data_uri($file, $mime) { $contents = file_get_contents($file); $base64 = base64_encode($contents); return ('data:' . $mime . ';base64,' . $base64); }
다음 코드는 데이터 URI를 사용하여 이미지를 표시합니다.
echo '<img src="' . data_uri('elephant.png', 'image/png') . '" alt="An elephant" />';
사용:
처리된 바이너리 이미지 데이터를 표시하려면 data_uri 함수를 사용하고 결과 URI를 다음과 같이 이미지 소스로 출력할 수 있습니다.
$imagedata1 = file_get_contents('assets/test.png'); $imagedata1 = process_using_gd_or_something($imagedata1); echo '<img src="' . data_uri('data:image/png;base64,' . base64_encode($imagedata1)) . '" />';
이 코드는 외부 스크립트나 디스크 저장소를 사용하지 않고 바이너리 데이터에서 직접 처리된 이미지를 표시합니다.
위 내용은 바이너리 이미지를 디스크에 저장하지 않고 단일 스크립트로 직접 표시하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!