note 68249 added to ref.strings

From: Date: Wed, 19 Jul 2006 17:52:49 +0000
Subject: note 68249 added to ref.strings
Groups: php.notes 
Request: Send a blank email to php-notes+get-114937@lists.php.net to get a copy of this message
Sometimes when converting integers to strings, it looks better to have the number spelled out. I wrote this function that converts integers from -999 to 999 into spelled out strings: function int2str($int=0){ $doOnes=true; $neg=$int<0?true:false; $int=abs(round($int)); $str=''; switch(strlen($int)){ case 1:$int='0'.$int; case 2:$int='0'.$int; case 3:$int.='';break; default:return $int; } switch($int{0}){ case 1:$str.='one-hundred-';break; case 2:$str.='two-hundred-';break; case 3:$str.='three-hundred-';break; case 4:$str.='four-hundred-';break; case 5:$str.='five-hundred-';break; case 6:$str.='six-hundred-';break; case 7:$str.='seven-hundred-';break; case 8:$str.='eight-hundred-';break; case 9:$str.='nine-hundred-';break; } switch($int{1}){ case 1: switch($int{2}){ case 0:$str.='ten-';break; case 1:$str.='eleven-';break; case 2:$str.='twelve-';break; case 3:$str.='thirteen-';break; case 4:$str.='fourteen-';break; case 5:$str.='fifteen-';break; case 6:$str.='sixteen-';break; case 7:$str.='seventeen-';break; case 8:$str.='eighteen-';break; case 9:$str.='nineteen-';break; } $doOnes=false; break; case 2:$str.='twenty-';break; case 3:$str.='thirty-';break; case 4:$str.='forty-';break; case 5:$str.='fifty-';break; case 6:$str.='sixty-';break; case 7:$str.='seventy-';break; case 8:$str.='eighty-';break; case 9:$str.='ninety-';break; } if($doOnes){ switch($int{2}){ case 1:$str.='one-';break; case 2:$str.='two-';break; case 3:$str.='three-';break; case 4:$str.='four-';break; case 5:$str.='five-';break; case 6:$str.='six-';break; case 7:$str.='seven-';break; case 8:$str.='eight-';break; case 9:$str.='nine-';break; }} $str=substr($str,0,-1); if($neg){ $str='negative '.$str; } if($int=='000'){ $str='zero'; } return $str; } Hope this helps someone, -Blayde ---- Server IP: 66.163.161.117 Probable Submitter: 207.70.3.163 (proxied: 1.0 ISASERVER, 1.0 DMZSERVER) ---- 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/ref.strings.php Edit -- http://master.php.net/note/edit/68249 Del: integrated -- http://master.php.net/note/delete/68249/integrated Del: useless -- http://master.php.net/note/delete/68249/useless Del: bad code -- http://master.php.net/note/delete/68249/bad+code Del: spam -- http://master.php.net/note/delete/68249/spam Del: non-english -- http://master.php.net/note/delete/68249/non-english Del: in docs -- http://master.php.net/note/delete/68249/in+docs Del: other reasons-- http://master.php.net/note/delete/68249 Reject -- http://master.php.net/note/reject/68249 Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#114937) next »