어떻게 PHP에서 file_get_contents를 사용하여 검색된 이미지를 표시 할 수 있습니까?file_get_contents를 사용하여 이미지 표시
헤더를 수정하고 에코를 적용해야합니까?
감사합니다.
어떻게 PHP에서 file_get_contents를 사용하여 검색된 이미지를 표시 할 수 있습니까?file_get_contents를 사용하여 이미지 표시
헤더를 수정하고 에코를 적용해야합니까?
감사합니다.
헤더를 수정하고 에코를 적용해야합니까?
.
header("content-type: image/your_image_type");
와 그 이후의 데이터를 보냅니다.
당신은 그렇게 할 수 있습니다, 또는 당신은 당신을 위해 그것을 출력 readfile
기능을 사용할 수 있습니다
header('Content-Type: image/x-png'); //or whatever
readfile('thefile.png');
die();
편집 : DERP, 고정 명백한 눈부신 오타. 당신이 ReadFile을 여기에 사용해야하는 이유는 그것이 file_get_contents 같은 경우 출력 버퍼에 직접 파일을 출력한다는 것입니다
$remoteImage = "http://www.example.com/gifs/logo.gif";
$imginfo = getimagesize($remoteImage);
header("Content-type: {$imginfo['mime']}");
readfile($remoteImage);
을 :
당신은이 같은 getimagesize에서 얻을 수 readfile 출력 이미지 헤더를 사용할 수 있습니다 파일을 메모리로 읽어 들여이 내용은이 내용에서 불필요하며 대용량 파일에는 잠재적으로 집중적입니다.
이 솔루션은 이미지 헤더가 동적으로 전달 될 때 훨씬 좋습니다. 필자가 한 가지 문제점을 발견했지만 PHP의 제 3 행 (헤더 행)에서 구문을 허용하지 않았습니다. 이것은 효과가 있었다 : header ("Content-type :". $ imginfo [ 'mime']); – jsleuth
이 같이 할 수 있습니다 : 대답 @seengee하는
<?php
$file = 'your_images.jpg';
header('Content-Type: image/jpeg');
header('Content-Length: ' . filesize($file));
echo file_get_contents($file);
?>
$image = 'http://images.itracki.com/2011/06/favicon.png';
// Read image path, convert to base64 encoding
$imageData = base64_encode(file_get_contents($image));
// Format the image SRC: data:{mime};base64,{data};
$src = 'data: '.mime_content_type($image).';base64,'.$imageData;
// Echo out a sample image
echo '<img src="' . $src . '">';
이것은 받아 들여진 응답이어야합니다 – Kareem
이것은 나를 위해 너무 작동합니다. +1 – valkirilov
작동하지만 10MB 이미지에서 조금 느립니다. –
작은 편집 : 를 작동하기 위해서는, 당신은 그렇지 않으면 오류가 발생합니다 변수 중괄호가 필요합니다.
header("Content-type: {$imginfo['mime']}");
괜찮아, 및 헤더 ("콘텐츠 유형 : 이미지/JPG"); 으로 충분해야합니까? –
JPG 이미지 인 경우 @Belgin, 예. –
이미지/jpeg가 필요하지 않습니까? – Rahly