画像をjsonで送信しようとして、今回は画像のエンコードにbase64エンコード方式を使用することを考えました。主な手順は
1. 画像ファイルをエンコードし、base64 エンコード形式と文字列に変換します
2. 宛先は json 配列を受け取ります。それを取り出します 文字列をエンコードし、デコードして、画像を表示します<br>
このメソッドの主な難点は、画像のエンコードとデコードにあります。 以下は、PHPで実装されているエンコードとデコードのコードです
<?php $image_file = './uploads/14391214729290.jpg'; //读取图片文件,并转换成base64编码格式 $image_info = getimagesize($image_file); $base64_image_content = "data:{$image_info['mime']};base64," . chunk_split(base64_encode(file_get_contents($image_file))); //echo $base64_image_content; //将base64字符串解码并保存为原来图片格式 if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){ $type = $result[2]; $new_file = "./newfile.{$type}"; if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){ echo '新文件保存成功:', $new_file; } } //显示图片 <img src="<?php echo $base64_image_content;?>" /> ?>
その中で、
<br>
preg_match()<br>関数
:正規表現一致を実行戻り値:
Return
一致数。 preg_match() は最初の一致後に検索を停止するため、その値は 0 回 (一致なし) または 1 回になります。エラーが発生した場合は pattern
preg_match() が返されます
。 FALSE
<br>
() 関数: <br>ファイルに文字列を書き込みます
戻り値: この関数は、ファイルに正常に書き込まれたデータのバイト数を返し、失敗した場合は FALSE を返します。
FALSE。
<br><br>
<br>
🎜著作権表示: この記事はオリジナルの記事ですブロガーによるものであり、ブロガーの許可なく複製することはできません。 🎜🎜
🎜
上記では、コンテンツの側面も含めて、base64 を使用して画像をエンコードおよびデコードする方法を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。 🎜
🎜
🎜