いくつかの html を処理し、すべての img タグ src を base64 に置き換えようとしています。画像を変換して base64 で返す関数を以下に記述しました。私が助けを必要としているのは、次のことです。
str_replace、preg_replace、またはある種の正規表現を使用して、いくつかの html をスキャンし、すべての「src」を画像の base64 表現に置き換える必要があります。html は、実際の html ドキュメントとしてではなく、変数として保存されます。たとえば、次のような html があるとします。
$htmlSample = "<div>Some text, yada yada and now and image <img src='image1.png' /></div>"
それをスキャンして、 src='image.png'をsrc="data:image/png;base64,/9j/4WvuRXhpZgAASUkqAAgAAAAIAA8BAgASAAAAbgAABAgAK"のような同等の base64 に置き換える必要があります---(これは実際の base64 ではなく、いくつかのフィラー テキストです。 )。関数は、html 内の複数の画像に対してこれを実行できる必要があります。あなたが私を正しい方向に向けることができれば、私はとても素晴らしいでしょう. みんなありがとう!
function convertImage($file)
{
if($fp = fopen($file,"rb", 0))
{
$picture = fread($fp,filesize($file));
fclose($fp);
$base64 = base64_encode($picture);
$tag = '<img ' . "" .
'src="data:image/png;base64,' . $base64 .
'" />';
return $tag;
}
}