note 77618 added to function.pack
| From: | dylan at pow7 dot com | Date: | Wed, 05 Sep 2007 23:00:44 +0000 |
| Subject: | note 77618 added to function.pack | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-130231@lists.php.net to get a copy of this message | ||
This is how I used pack to convert base2 to base64 since base_convert doesn't support base64
The base conversions don't work for long strings, which is why I convert 1 byte at a time
Hope this helps someone
function base2to64($base2) {
if ($remainbits = strlen($base2)%8) $base2 .= str_repeat('0',8-$remainbits);
$base64 = NULL;
for ($i=0;$i<strlen($base2);$i+=8) $base16 .=
sprintf('%02x',bindec(sprintf('%08d',substr($base2,$i,8))));
return base64_encode(pack('H*',$base16));
}
function base64to2($base64) {
list($base16) = unpack('H*0',base64_decode($base64));
$base2 = NULL;
for ($i=0;$i<strlen($base16);$i++) $base2 .=
sprintf('%04d',base_convert(substr($base16,$i,1),16,2));
return $base2;
}
----
Server IP: 216.235.15.211
Probable Submitter: 142.176.124.16
----
Manual Page -- http://www.php.net/manual/en/function.pack.php
Edit -- https://master.php.net/note/edit/77618
Del: integrated -- https://master.php.net/note/delete/77618/integrated
Del: useless -- https://master.php.net/note/delete/77618/useless
Del: bad code -- https://master.php.net/note/delete/77618/bad+code
Del: spam -- https://master.php.net/note/delete/77618/spam
Del: non-english -- https://master.php.net/note/delete/77618/non-english
Del: in docs -- https://master.php.net/note/delete/77618/in+docs
Del: other reasons-- https://master.php.net/note/delete/77618
Reject -- https://master.php.net/note/reject/77618
Search -- https://master.php.net/manage/user-notes.php