1

暗号化された画像を復号化する方法。画像の復号化は次のように表示されます。

ÿØÿà�JFIF��–�–��ÿþ�.Handmade Software, Inc. Image Alchemy v1.11
ÿÛ�„�

#!!!$'$ & !                                                    ÿÀ�àg!�ÿÄ¢���������� 
������� 
���}�!1AQa"q2‘¡#B±ÁRÑð$3br‚ 
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùú��w�!1AQaq"2B‘¡±Á #3Rð

この画像は、RETS API からのものです。PHRETS ライブラリを使用してデータを取得しています。このライブラリは PHP にあります。画像データを取得するために使用される関数は次のとおりです。

$objects = $rets->GetObject('Property', 'Photo', '61555', '*', 0);
foreach ($objects as $photo) {
 $photo = $photo->getContent();
 if($photo){
 echo "<hr><pre>";
 var_dump($photo);
 echo "</pre><hr>";
 }
}
4

1 に答える 1

0

$photo には生の JPEG 画像データが含まれます。base64 でエンコードし、画像の src として設定したデータ URI の一部として base64 でエンコードされた文字列を使用して表示できます。

echo "<img src=\"data:image/jpeg;base64," . base64_encode($photo) . "\" />"; 

画像が大きい場合、これはベスト プラクティスではない可能性があります。ID に基づいて画像を返す別の PHP スクリプトを作成し、img タグの src フィールドでそのスクリプトを参照できるようにすることをお勧めします。そうすれば、ブラウザはそれをキャッシュできる可能性があり、サーバーが送信するデータは少なくなります (base64 エンコーディングではサイズが大きくなります)。

于 2016-07-25T12:42:42.587 に答える