Php将编码数据返回到ajax,当它甚至不在json_encode中时

时间:2017-01-10 15:44:09

标签: php jquery

我在下面发布的文件是从jQuery中获取的。
它返回编码数据(带有问号符号和全部)。我甚至没有回应数据或任何东西。
我发给客户端的唯一东西是json_encode。 json_encode数据位于编码数据之后 当我不调用我的base64_extension函数时,一切正常。

EDIT
代码不再吐出编码数据。但是,该功能返回4(不是图像)。我想了解原因。

function base64_extension($base64)
{
$base64 = str_replace("data:image/png;base64,", "", $base64);

$base64 = imagecreatefromstring(base64_decode($base64));

if (!$base64) {
    return 0; /* Not image */
}

if (imagepng($base64, "tmp.png")) {
    imagedestroy($base64);
    unlink('tmp.png');
    return 1;
} else if (imagejpeg($base64, "tmp.jpg")) {
    imagedestroy($base64);
    unlink('tmp.jpg');
    return 2;
} else if (imagegif($base64, "tmp.gif")) {
    imagedestroy($base64);
    unlink('tmp.gif');
    return 3;
} else {
    return 4; /* Not image */
}
}

这就是功能,这是其余部分:

echo json_encode(array("status" => "success", "dreamID" => $data['dreamId'], "mime" => base64_extension($_POST['dream_pic'])));

mime返回1.因此该函数似乎有效。不知道为什么一堆编码数据会返回到ajax。谢谢!

0 个答案:

没有答案