note 66240 added to function.base-convert
| From: | MichaelRenner at osu1 dot php dot net | Date: | Wed, 17 May 2006 13:24:14 +0000 |
| Subject: | note 66240 added to function.base-convert | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-111497@lists.php.net to get a copy of this message | ||
Here is an unfucked version of the arbitrary-large-number base_convert examples below:
I modified it so that it works as drop-in replacement for base_convert. Attention, no sanity
checking is done for the input numbers, anything larger than 36 won't work..
function unfucked_base_convert ($numstring, $frombase, $tobase) {
$chars = "0123456789abcdefghijklmnopqrstuvwxyz";
$tostring = substr($chars, 0, $tobase);
$length = strlen($numstring);
$result = '';
for ($i = 0; $i < $length; $i++) {
$number[$i] = strpos($chars, $numstring{$i});
}
do {
$divide = 0;
$newlen = 0;
for ($i = 0; $i < $length; $i++) {
$divide = $divide * $frombase + $number[$i];
if ($divide >= $tobase) {
$number[$newlen++] = (int)($divide / $tobase);
$divide = $divide % $tobase;
} elseif ($newlen > 0) {
$number[$newlen++] = 0;
}
}
$length = $newlen;
$result = $tostring{$divide} . $result;
}
while ($newlen != 0);
return $result;
}
----
Server IP: 192.35.244.50
Probable Submitter: 213.229.14.38
----
X-Spam-Status: No, hits=3.1 required=5.0 tests=DATE_MISSING,FROM_NO_LOWER
autolearn=no version=2.64
----
Manual Page -- http://www.php.net/manual/en/function.base-convert.php
Edit -- http://master.php.net/note/edit/66240
Del: integrated -- http://master.php.net/note/delete/66240/integrated
Del: useless -- http://master.php.net/note/delete/66240/useless
Del: bad code -- http://master.php.net/note/delete/66240/bad+code
Del: spam -- http://master.php.net/note/delete/66240/spam
Del: non-english -- http://master.php.net/note/delete/66240/non-english
Del: in docs -- http://master.php.net/note/delete/66240/in+docs
Del: other reasons-- http://master.php.net/note/delete/66240
Reject -- http://master.php.net/note/reject/66240
Search -- http://master.php.net/manage/user-notes.php