I need to convert a large collection of binary to a string.
The code I used to get the binary code is:
$buffer = file_get_contents('test.php');
$length = filesize('test.php');
if (!$buffer || !$length) {
die("Reading error\n");
}
$_buffer = '';
for ($i = 0; $i < $length; $i++) {
$_buffer .= sprintf("%08b", ord($buffer[$i]));
}
I tried to use base_convert().This gives my the following error message :
<?php
pack('H*', base_convert($_buffer , 2, 16));
?>
Warning: base_convert(): Number too large in C:\xampp\htdocs\decrypt.php on line 25
Any suggestions?
The binary code is
0011110000111111011100000110100001110000000011010000101000100100011000100111010101100110011001100110010101110010001000000011110100100000011001100110100101101100011001010101111101100111011001010111010001011111011000110110111101101110011101000110010101101110011101000111001100101000001001110111010001100101011100110111010000101110011100000110100001110000001001110010100100111011000011010000101000100100011011000110010101101110011001110111010001101000001000000011110100100000011001100110100101101100011001010111001101101001011110100110010100101000001001110111010001100101011100110111010000101110011100000110100001110000001001110010100100111011000011010000101000001101000010100110100101100110001000000010100000100001001001000110001001110101011001100110011001100101011100100010000001111100011111000010000000100001001001000110110001100101011011100110011101110100011010000010100100100000011110110000110100001010001000000010000001100100011010010110010100101000001000100101001001100101011000010110010001101001011011100110011100100000011001010111001001110010011011110111001001011100011011100010001000101001001110110000110100001010011111010000110100001010000011010000101000100100010111110110001001110101011001100110011001100101011100100010000000111101001000000010011100100111001110110000110100001010011001100110111101110010001000000010100000100100011010010010000000111101001000000011000000111011001000000010010001101001001000000011110000100000001001000110110001100101011011100110011101110100011010000011101100100000001001000110100100101011001010110010100100100000011110110000110100001010001000000010000000100100010111110110001001110101011001100110011001100101011100100010000000101110001111010010000001110011011100000111001001101001011011100111010001100110001010000010001000100101001100000011100001100010001000100010110000100000011011110111001001100100001010000010010001100010011101010110011001100110011001010111001001011011001001000110100101011101001010010010100100111011000011010000101001111101000011010000101001100101011000110110100001101111001000000111000001100001011000110110101100101000001001110100100000101010001001110010110001100010011000010111001101100101010111110110001101101111011011100111011001100101011100100111010000101000001001000101111101100010011101010110011001100110011001010111001000101100001100100010110000110001001101100010100100101001001110110000110100001010011001010110001101101000011011110010000000100100010111110110001001110101011001100110011001100101011100100010111000100010010111000110111000100010001110110000110100001010001001000110011001101001011011000110010100100000001111010010000000100111011101000110010101110011011101000010111001110000011010000111000000100111001110110000110100001010001001000111001101110100011100100110100101101110011001110010000000111101001000000110011001101001011011000110010101011111011001110110010101110100010111110110001101101111011011100111010001100101011011100111010001110011001010000010010001100110011010010110110001100101001010010011101100001101000010100000110100001010011001100110111101110010001010000010010001101100001111010111001101110100011100100110110001100101011011100010100000100100011100110111010001110010011010010110111001100111001010010010110000100000001001000110100100111101001100000011101100100000001001000110100100111100001001000110110000111011001000000010010001101001001010110010101100101001000011010000101001111011000011010000101000100000001000000010000000100000011100000111001001101001011011100111010001100110001010000010011100100101001100000011100001100010001001110010110000100000011011110111001001100100001010000010010001110011011101000111001001101001011011100110011101011011001001000110100101011101001010010010100100111011000011010000101001111101
The output should be :
<?php
$buffer = file_get_contents('test.php');
$length = filesize('test.php');
if (!$buffer || !$length) {
die("Reading error\n");
}
$_buffer = '';
for ($i = 0; $i < $length; $i++) {
$_buffer .= sprintf("%08b", ord($buffer[$i]));
}
echo pack('H*',base_convert($_buffer,2,16));
echo $_buffer."\n";
$file = 'test.php';
$string = file_get_contents($file);
for($l=strlen($string), $i=0; $i<$l; $i++)
{
printf('%08b', ord($string[$i]));
}