从二进制数据图像中获取图像类型并将其转换为 PHP 中的实际图像

Get image type from binary data image & convert it to actual image in PHP

坦率地说,我不确定这是否是另一个问题的重复,因为上下文应该不同。

我目前正在处理一些 API returns 状态和内容(二进制数据图像),我将首先对其进行 base64 编码。问题是如何最初以二进制数据形式获取图像类型,然后将其转换为具有类型扩展名的实际图像。在这种情况下,我使用 PHP 因为它涉及后端任务。 谢谢

更新: 对于这种情况,我从外部站点 api 获取二进制形式的图像。我使用 file_get_contents 但它 returns 为空或空。当我使用 base64_encode 时,它会将图像显示为编码数据。问题是我需要将其转换为普通图像。我尝试将 getimagesize 编码和解码并尝试打印输出,它 returns 为空。 我还缺少任何步骤吗?

关于您的 2 个问题:

how to convert it back to normal image.

如果图片只是简单的base64编码,那么当然用base64_decode解码得到原始图片数据

$original_image = base64_decode($encoded_base64_string);

I guess no since what I need is its original image type

不要被它的名字搞糊涂了,getimagesize还告诉你图片类型和mime类型。