note 34698 deleted from function.dechex by googleguy
| From: | googleguy@php.net | Date: | Tue, 22 Oct 2013 08:15:00 +0000 |
| Subject: | note 34698 deleted from function.dechex by googleguy | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-196801@lists.php.net to get a copy of this message | ||
Note Submitter: paeppi at actionorg dot de
----
# One example how to convert a decimal number into any other system (here 32 digits -- 0 to v) and
how to convert back.
# Just replace the "32" in my functions with the number of digits in "your"
system, and continue the replace-lists.
# This is surely not the very best way to do this, but it hopefully helps :-)
function decttw($int_dec) {
$s = $int_dec;
while ($i < 19) {
$exp = pow(32,18 - $i);
$modulo = fmod($s,$exp);
$value = ($s - $modulo) / $exp;
if (($value > 0) && ($start != 1)) {
$start = 1;
}
if ($start == 1) {
$decs = $value;
$decs = ereg_replace ("10", "a", $decs);
$decs = ereg_replace ("11", "b", $decs);
$decs = ereg_replace ("12", "c", $decs);
$decs = ereg_replace ("13", "d", $decs);
$decs = ereg_replace ("14", "e", $decs);
$decs = ereg_replace ("15", "f", $decs);
$decs = ereg_replace ("16", "g", $decs);
$decs = ereg_replace ("17", "h", $decs);
$decs = ereg_replace ("18", "i", $decs);
$decs = ereg_replace ("19", "j", $decs);
$decs = ereg_replace ("20", "k", $decs);
$decs = ereg_replace ("21", "l", $decs);
$decs = ereg_replace ("22", "m", $decs);
$decs = ereg_replace ("23", "n", $decs);
$decs = ereg_replace ("24", "o", $decs);
$decs = ereg_replace ("25", "p", $decs);
$decs = ereg_replace ("26", "q", $decs);
$decs = ereg_replace ("27", "r", $decs);
$decs = ereg_replace ("28", "s", $decs);
$decs = ereg_replace ("29", "t", $decs);
$decs = ereg_replace ("30", "u", $decs);
$decs = ereg_replace ("31", "v", $decs);
$int_value = $int_value.$decs;
}
$s = $s - $value * $exp;
$i++;
}
return $int_value;
}
function ttwdec($int_ttw) {
$digits = strlen($int_ttw);
while ($i < $digits) {
$s = substr($int_ttw,$i,1);
$decs = $s;
$decs = ereg_replace ("a", "10", $decs);
$decs = ereg_replace ("b", "11", $decs);
$decs = ereg_replace ("c", "12", $decs);
$decs = ereg_replace ("d", "13", $decs);
$decs = ereg_replace ("e", "14", $decs);
$decs = ereg_replace ("f", "15", $decs);
$decs = ereg_replace ("g", "16", $decs);
$decs = ereg_replace ("h", "17", $decs);
$decs = ereg_replace ("i", "18", $decs);
$decs = ereg_replace ("j", "19", $decs);
$decs = ereg_replace ("k", "20", $decs);
$decs = ereg_replace ("l", "21", $decs);
$decs = ereg_replace ("m", "22", $decs);
$decs = ereg_replace ("n", "23", $decs);
$decs = ereg_replace ("o", "24", $decs);
$decs = ereg_replace ("p", "25", $decs);
$decs = ereg_replace ("q", "26", $decs);
$decs = ereg_replace ("r", "27", $decs);
$decs = ereg_replace ("s", "28", $decs);
$decs = ereg_replace ("t", "29", $decs);
$decs = ereg_replace ("u", "30", $decs);
$decs = ereg_replace ("v", "31", $decs);
$i++;
$value = $decs * pow(32,($digits - $i));
$int_value = $int_value + $value;
}
return $int_value;
}