首页 > 解决方案 > 使用php从二进制输入中解析字节字符串

问题描述

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

For example : input= 020104020107020108020103.

从示例中,我需要在0201.

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

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

标签: php

解决方案


如果您确定每个字节都将带有前缀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);

推荐阅读