开发者

PHP Array to binary data

开发者 https://www.devze.com 2023-01-15 08:05 出处:网络
Ok so i\'ve got an array with integers (converted from intel Hex file), and need to output it as binary.

Ok so i've got an array with integers (converted from intel Hex file), and need to output it as binary.

Here is the file reader, but how do开发者_运维知识库 i convert the array back to a byte stream (utf-8)?

$filename = "./latest/firmware.hex";
$file = fopen($filename, "r");
$image = array();
$imagesize = 0;
$count = 0;
$address = 0;
$type = 0;

while(!feof($file))
{
    $line = fgets($file);
    $count = intval(substr($line,1,2));
    $address = intval(substr($line,3,4));
    $type = intval(substr($line,7,2));
    if($type==0)
    {
        for ($i=0; $i < $count; $i++) { 
            $image[$address+1] = intval(substr($line,9+$i*2,2));
            if (($address + $i) > $imagesize)
            {
                $imagesize = $address + $i;
            }
        }
    }   
    else if($type == 1)
    {
        break;
    }
}


  • Step 1: Use chr() to get character from ascii value.

  • Step 2: Use fwrite() to write binary data to file.

You may want to collect it to a buffer before writing it to file. PHP strings can contain zeroes safely.

0

精彩评论

暂无评论...
验证码 换一张
取 消