note 103064 added to function.base-convert
| From: | Anonymous at osu1 dot php dot net | Date: | Wed, 23 Mar 2011 13:51:26 +0000 |
| Subject: | note 103064 added to function.base-convert | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-178120@lists.php.net to get a copy of this message | ||
some improvement for the functon of fragmer[at]mail[dot]ru 02-May-2005 03:58
the dec2any conversion does not work when the number is 0, since
log10(0) = -INF
one should add a special check for 0.
<?php
// Decimal > Custom
function dec2any( $num, $base=62, $index=false ) {
if (! $base ) {
$base = strlen( $index );
} else if (! $index ) {
$index = substr( "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
,0 ,$base );
}
// check if we have a zero
$t = ($num == 0) ? 0 : floor( log10( $num ) / log10( $base ) );
for ( $t; $t >= 0; $t-- ) {
$a = floor( $num / pow( $base, $t ) );
$out = $out . substr( $index, $a, 1 );
$num = $num - ( $a * pow( $base, $t ) );
}
return $out;
}
?>
----
Server IP: 69.147.83.197
Probable Submitter: 86.59.105.253
----
Manual Page -- http://www.php.net/manual/en/function.base-convert.php
Edit -- https://master.php.net/note/edit/103064
Del: integrated -- https://master.php.net/note/delete/103064/integrated
Del: useless -- https://master.php.net/note/delete/103064/useless
Del: bad code -- https://master.php.net/note/delete/103064/bad+code
Del: spam -- https://master.php.net/note/delete/103064/spam
Del: non-english -- https://master.php.net/note/delete/103064/non-english
Del: in docs -- https://master.php.net/note/delete/103064/in+docs
Del: other reasons-- https://master.php.net/note/delete/103064
Reject -- https://master.php.net/note/reject/103064
Search -- https://master.php.net/manage/user-notes.php