преобразование строки в целочисленное значение - PullRequest
0 голосов
/ 17 января 2011

со строкой 010100

Теперь, когда это в шестнадцатеричном виде.Как бы вы получили результирующие значения:

id = 4;
part = 1;
setting = 0;
increment=0;

Зная, что в этой строке идентификатор должен быть 10-битным значением, частью 6-битным значением, установкой 2-битного значения, приращением с 6 битами как бы вы сгенерировали строку?

Спасибо за любую помощь.

К сожалению, пропустил значение приращение , чтобы это стало более понятным ...

1 Ответ

1 голос
/ 17 января 2011

Вы можете сделать что-то вроде:

//      123456789012345612123456
$str = '000001010110000111000111';
//              21    33 3     7
$id = base_convert(substr($str, 0, 10), 2, 10);
$part = base_convert(substr($str, 10, 6), 2, 10);
$setting = base_convert(substr($str, 16, 2), 2, 10);
$increment = base_convert(substr($str, 18, 6), 2, 10);
echo "id = $id\npart = $part\nsetting = $setting\nincrement = $increment\n";

Вывод:

id = 21
part = 33
setting = 3
increment = 7
...