나는이 문제를 해결하기 위해 지난 밤을 보냈습니다.PHP Imagepng 출력이 브라우저에 표시되지 않습니다.
관련 헤더가 포함 된 PNG 이미지를 반환하는 php 파일이 있습니다. 관련 파일 내용은 기본적으로 있습니다. 따라서이를 표시 할 수 없습니다 이미지와 오류가 같은 (아니 이전의 출력 또는 공백 헤더 문 전)
header('Content-Type: image/png');
$img = @imagecreatefrompng($path);
imagepng($img);
imagedestroy($img);
그러나 브라우저 (파이어 폭스) STH를 말한다.
파일을 다른 위치에 저장하고 FTP로 다운로드하면 표시됩니다. 마찬가지로 : 나는 헤더 문을 제거하고 파일 내용을 인쇄 출력 할 경우
imagepng($img, "/tmp/hedede.png");
은 다른 모든 쓰레기 데이터와 PNG 헤더를 보여줍니다. 이 페이지를 브라우저에 PNG 파일로 저장하면 브라우저는 저장된 PNG 파일을 다시 표시하지 않지만 Irfanview는이를 보여줍니다.
imagecreatefrompng에서 "@"을 제거하면 누락 된 오류가있을 수 있습니다. – slash197
예, 다음과 같은 알림이 표시 될 수 있습니다. 'abc'은 (는) 올바른 PNG 파일이 아닙니다. – hungneox
"@"문자가 삭제되었습니다. 하지만 여전히 'error_reporting'이'(E_ALL)'로 설정되어 있어도 오류가 발생하지 않았습니다. 또한 입력 파일이 유효한 PNG이고 브라우저를 사용하여 해당 파일을 직접 호출하면 표시 할 수 있다고 확신합니다. – noway