HEX в двоичный массив на PHP

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
DAP
Сообщения: 118
Зарегистрирован: Пн апр 06, 2015 10:25 pm
Благодарил (а): 6 раз
Поблагодарили: 16 раз

HEX в двоичный массив на PHP

Сообщение DAP » Вс дек 04, 2016 4:07 am

Как на php загнать hex в двоичный массив ?
Например есть
$val=41;
тут должен быть некий магический код
и "тадам"результат эквивалентен:
$value=array(0,0,1,0,0,0,0,1);
Lans
Сообщения: 9
Зарегистрирован: Пн сен 26, 2016 12:11 pm
Благодарил (а): 0
Поблагодарили: 0

Re: HEX в двоичный массив на PHP

Сообщение Lans » Вс дек 04, 2016 11:32 am

Такой вариант подойдет?

$val=41;
$value[] = base_convert($val, 16, 2);

echo base_convert($val, 16, 2);

1000001
DAP
Сообщения: 118
Зарегистрирован: Пн апр 06, 2015 10:25 pm
Благодарил (а): 6 раз
Поблагодарили: 16 раз

Re: HEX в двоичный массив на PHP

Сообщение DAP » Вс дек 04, 2016 12:50 pm

нет, base convert жрет первые ноли и это строка, а не массив.
Lans
Сообщения: 9
Зарегистрирован: Пн сен 26, 2016 12:11 pm
Благодарил (а): 0
Поблагодарили: 0

Re: HEX в двоичный массив на PHP

Сообщение Lans » Вс дек 04, 2016 4:18 pm

Увидел в другой теме. А может двоичный массив и не нужен - сравнение идет с символом '1', строка вполне должна подойти.

$val=41;
$value = sprintf("%08b", hexdec($val));
for ($i=0; $i < 8; $i+=1){
print($value[$i]);
}

01000001
Ответить