少数を2進数に変換する
0.4は二進数で表現すると循環小数になるという話を読んで「へえ!」と思ったので試してみました。
<?php function fewbinary($num){ $result = ""; $integer = floor($num); $few = $num - $integer; while(1){ if($num & 1){ $result = "1".$result; }else{ $result = "0".$result; } $num = $num >> 1; if($num == 0)break; } $result = $result."."; $position = 0.5; for($i=0;$i < 7;$i++){ if($few >= $position){ $result = $result."1"; $few -= $position; }else{ $result = $result."0"; } $position /= 2; } return $result; } echo fewbinary(5.4); ?>