使用php从二进制输入中解析一个字节字符串

问题描述 投票:0回答:1

我对PHP非常陌生。我需要一些帮助来解析来自二进制输入的字节字符串。

For example : input= 020104020107020108020103.

从示例中,我需要提取0201之后的任何字节。

 I mean --> 04, 07, 08, 03. 

将每个值保存到变量并标识最后一个。

php
1个回答
0
投票

如果您确定每个字节都以0201为前缀,并且每个字节都使用2个字符,则可以使用以下代码:

<?php

$input = "020104020107020108020103";
$bytes = [];

for ($i = 4; $i < strlen($input); ++$i) {
    $byte = substr($input, $i, 2);

    array_push($bytes, $byte);

    // 1 byte + 4 byte (0201 offset)
    $i += 5;
}

print_r($bytes);
© www.soinside.com 2019 - 2024. All rights reserved.