note 110795 added to function.is-int

From: Date: Sun, 09 Dec 2012 07:30:42 +0000
Subject: note 110795 added to function.is-int
Groups: php.notes 
Request: Send a blank email to php-notes+get-192402@lists.php.net to get a copy of this message
This tiny function will do both, cast and verify any string to int or float: <?php function str_cast($s) { $v = 0 + $s; return "$v"==$s ? $v : $s; } //Test: var_dump(str_cast("5.3")); //float(5.3) var_dump(str_cast("5")); //int(5) var_dump(str_cast("0s")); //string(2) "0s" var_dump(str_cast("0xFF")); //int(255) var_dump(str_cast("3.5E6")); //float(3500000) var_dump(str_cast("34875374653874538746385746538764538746538746538746538645123472974652937846529876")); //string(80) "34875374653874538746385746538764538746538746538746538645123472974652937846529876" ?> You can use this trick to check for type: <?php function is_really_for_sure_float($s) { $v = 0 + $s; return ("$v"==$s && is_float($v)) ? true : false; } var_dump(is_really_for_sure_float('5')); //false var_dump(is_really_for_sure_float('5.2')); //true var_dump(is_really_for_sure_float('0xFF')); //false var_dump(is_really_for_sure_float('3.5E2'));//true ?> ---- Server IP: 46.17.113.3 Probable Submitter: 77.254.79.167 ---- Manual Page -- http://php.net/manual/en/function.is-int.php Edit -- https://master.php.net/note/edit/110795 Del: integrated -- https://master.php.net/note/delete/110795/integrated Del: useless -- https://master.php.net/note/delete/110795/useless Del: bad code -- https://master.php.net/note/delete/110795/bad+code Del: spam -- https://master.php.net/note/delete/110795/spam Del: non-english -- https://master.php.net/note/delete/110795/non-english Del: in docs -- https://master.php.net/note/delete/110795/in+docs Del: other reasons-- https://master.php.net/note/delete/110795 Reject -- https://master.php.net/note/reject/110795 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#192402) next »