phpretard Posted March 24, 2009 Share Posted March 24, 2009 I am validating phone numbers. I have to validate 3. Do I need to copy this function 3 times or is there an easier way with less code? $Phone="1234567890"; $AltPhone="0987654321"; $Fax="6543219870"; It works great for one! function Phone($Phone) { $stripped= preg_replace("/[^0-9]/", "", $Phone); if(strlen($stripped) == 7) return preg_replace("/([0-9]{3})([0-9]{4})/", "$1-$2",$stripped); elseif(strlen($stripped) == 10) return preg_replace("/([0-9]{3})([0-9]{3})([0-9]{4})/", "($1) $2-$3",$stripped); else return $Phone; } Thank you! Link to comment https://forums.phpfreaks.com/topic/150848-solved-simple-function-help/ Share on other sites More sharing options...
trq Posted March 24, 2009 Share Posted March 24, 2009 You need to call the function 3 times, not copy it. Link to comment https://forums.phpfreaks.com/topic/150848-solved-simple-function-help/#findComment-792439 Share on other sites More sharing options...
phpretard Posted March 24, 2009 Author Share Posted March 24, 2009 Like this? <?php echo Phone($Phone); ?> <?php echo Phone($AltPhone); ?> <?php echo Phone($Fax); ?> Link to comment https://forums.phpfreaks.com/topic/150848-solved-simple-function-help/#findComment-792441 Share on other sites More sharing options...
trq Posted March 24, 2009 Share Posted March 24, 2009 Indeed, or you could use a loop. foreach (array("1234567890", "0987654321", "6543219870") as $phno) { echo Phone($phno); } Really no need though. Link to comment https://forums.phpfreaks.com/topic/150848-solved-simple-function-help/#findComment-792443 Share on other sites More sharing options...
phpretard Posted March 24, 2009 Author Share Posted March 24, 2009 Thanks a million! I chose not to use the array but it worked both ways. Link to comment https://forums.phpfreaks.com/topic/150848-solved-simple-function-help/#findComment-792445 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.