PHP を使用して、Nihilogic の "Canvas2Image" JavaScript ツールによって生成された Base64 文字列をサーバー上の実際の PNG ファイルに変換するには、次のことを実行する必要があります手順:
base64 画像データを抽出します。 データ URI ヘッダーを実際の Base64 データから分離します。スニペットは次のとおりです:
$data = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...'; list($type, $data) = explode(';', $data); list(, $data) = explode(',', $data);
base64 データをデコードします。 エンコードされたデータをバイナリ文字列に変換します。
$data = base64_decode($data);
画像を デコードされたデータをサーバー上の PNG ファイルに書き込みます。
file_put_contents('/tmp/image.png', $data);
代替のワンライナー方法: これを使用することもできます-line コマンドを使用して、ファイルを抽出、デコード、保存します。 image:
$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));
適切なエラー処理を確保する: 無効なデータ URI、失敗した Base64 デコード、または不正な画像タイプを検出するメカニズムを実装します。
if (preg_match('/^data:image\/(\w+);base64,/', $data, $type)) { // Valid data URI } else { throw new \Exception('Invalid data URI'); } if ($data === false) { throw new \Exception('Base64 decode failed'); }
以上がPHP を使用して Base64 データ URI から PNG 画像をサーバー側で保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。