I was wondering if there is a easy way to display the 8 bits of a byte(or char) in PHP.
For example for ASCII encoding the character \'0\' should return 0011 0000
One more solution, this includes space between 4 digits:
$char = 0;
echo chunk_split(sprintf('%08b', ord($char)), 4, ' ');
This should do the job:
$bin = decbin(ord($char));
$bin = str_pad($bin, 8, 0, STR_PAD_LEFT);
You can use bitwise operators for that
$a='C';
for ($i=0; $i<8; $i++) {
var_dump((ord($a) & (1<<$i))>>$i);
}
Output:
int(1)
int(1)
int(0)
int(0)
int(0)
int(0)
int(1)
int(0)