在PHP中将Hex转换为图像?

时间:2012-11-07 17:11:58

标签: php mysql web-services

我正在开发通过PHP Webservice与服务器通信的移动应用程序。这是我第一次使用PHP。我设法将数据上传到数据库。现在我需要发送一个图像来存储在ftp服务器中。为此,我转换了image->hex并从我的应用程序发送。

服务器端

我得到了十六进制代码,但不知道如何将其转换为图像并存储在ftp服务器中。我真的在这里挣扎。我用谷歌搜索,但找不到确切的。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:7)

将HEX字符串转换为二进制:

$binary = pack("H*", $hex);

pack("H*", ...)相当于hex2bin,自PHP 5.4起可用。

将其写入磁盘:

file_put_contents("file.png", $binary);

答案 1 :(得分:0)

假设您在要将此十六进制转换为真实图像的页面中收到十六进制字符串。请检查此代码段是否对您有所帮助。

<?php  

    $hexpic=".......................
    .....................";

    # convert the hex string to binary

    $data = pack("H" . strlen($hexpic), $hexpic);

    #write the binary string into an image file

    file_put_contents("sample.png", $data);
?>