2013-02-15 69 views
0

我有一些和弦和他们的名字数据的字符串:PHP不写一个Base64编码图像的HTML文件

$的HTML = “< IMG SRC =” 数据:图像/ PNG; BASE64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA4AQMAAAB31mwxAAAABlBMVEX/// 8AAABVwtN + AAAAAXRSTlMAQObYZgAAAEVJREFUeF5jIApwgDCIEAFhEKEEwkoIEYQaLID/PxD8AMmDARpDBsaww8JAqMHUTsBkGRkow84Ok4FQQ5zJZDAG0GTCAADwOiM87WVzggAAAABJRU5ErkJggg ==” ALT = “E”/>电子

当我尝试把这个变成一个文件

file_put_contents(“data2.html”,$ html);

我只是创建一个空文件。

+0

您需要在将字符串赋值为'$ html'时将引号转义。 '$ html =“ Brad 2013-02-15 22:23:46

+1

1.您从未关闭'$ html'变量; 2.逃避报价; 3.删除'<'和'img'之间的空格。 – Aborted 2013-02-15 22:24:35

回答

3

$html变量改成这样:

$html = '<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA4AQMAAAB31mwxAAAABlBMVEX///8AAABVwtN+AAAAAXRSTlMAQObYZgAAAEVJREFUeF5jIApwgDCIEAFhEKEEwkoIEYQaLID/PxD8AMmDARpDBsaww8JAqMHUTsBkGRkow84Ok4FQQ5zJZDAG0GTCAADwOiM87WVzggAAAABJRU5ErkJggg==" alt="E" /> E'; 

然后做file_put_contents('data2.html', $html);部分。

我们在这里做的是用双引号替换双引号,所以你不需要在字符串内部使用双引号。我也用一个分号结束了你的字符串,这个字符串丢失了。始终记得在开始时声明结束。