2013-12-18 2 views
0

내 이미지 경로를 인코딩하는 데 다음 코드를 사용하고 있습니다. 나는 그것이 안전한지 또는 누군가가 인코딩 된 문자열에서 원래 파일 경로를 디코딩 할 수 있는지 알고 싶습니다.Base64를 원본 이미지 경로로 변환

$imagedata = file_get_contents("ab/test.png"); 
$base64 = base64_encode($imagedata); 
echo '<img src="data:image/jpeg;base64,'.$base64.'" />'; 

도 데이터를 사용해야합니까? image/jpeg 또는 png 또는 gif 또는 모든 확장이 작동합니까?

답변

1

데이터를 디코딩 할 수 있지만 원본 파일 이름을 알 수는 없습니다. 인코딩 된 데이터에는 메타 -data가 아닌 이미지 데이터 만 포함됩니다 (파일 이름, 마임 유형 - 직접, 아이 노드 등 제외).

두 번째 질문에 따라 데이터와 일치하는 적절한 MIME 유형을 사용해야합니다. 그렇지 않으면 브라우저/클라이언트가 해당 내용을 이해하지 못합니다.

0

파일 내용을 Base64로 인코딩 된 문자열로로드하므로, 내용을 제공하기 만하므로 경로를 가져올 수 없습니다.

0

"안전하다"는 의미는 가역적이면 아니오, 안전하지는 않습니다.

Base64_decode로 쉽게 디코딩 할 수있는 데이터를 Base64로 인코딩합니다. 누군가가 base64 데이터를 원래 이미지로 디코딩 할 수 있습니다.

관련 문제