From 64d7a8bbe84719c88dee2457f32c82dd7380c018 Mon Sep 17 00:00:00 2001 From: Jason Woofenden Date: Thu, 20 Nov 2008 21:50:35 -0500 Subject: [PATCH] Fixed format_decimal() to support negative numbers --- format.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/format.php b/format.php index 900e781..395835d 100644 --- a/format.php +++ b/format.php @@ -45,7 +45,7 @@ function format_int($str) { return ereg_replace('^0*([0-9])', '\1', $str); } -function format_decimal($str) { +function format_positive_decimal($str) { $str = ereg_replace('[^0-9.]', '', $str); $pos = strpos($str, '.'); if($pos !== false) { @@ -61,6 +61,19 @@ function format_decimal($str) { return $str; } +function format_decimal($str) { + $str = ereg_replace('[^0-9.-]', '', $str); + if(substr($str, 0, 1) == '-') { + $str = format_positive_decimal(substr($str, 1)); + if($str !== '' && $str !== '0' && $str != '0.0') { + $str = '-' . $str; + } + return $str; + } else { + return format_positive_decimal($str); + } +} + # return 0 of there's no digits function format_int_0($str) { $str = format_int($str); -- 1.7.10.4