我有幾個花車:在PHP中更改數字的符號?
-4.50
+6.25
-8.00
-1.75
我怎樣才能改變這一切負花車,使他們成爲:
-4.50
-6.25
-8.00
-1.75
此外,我需要一種方法做反向
如果浮動是負面的,使其成爲積極的。
我有幾個花車:在PHP中更改數字的符號?
-4.50
+6.25
-8.00
-1.75
我怎樣才能改變這一切負花車,使他們成爲:
-4.50
-6.25
-8.00
-1.75
此外,我需要一種方法做反向
如果浮動是負面的,使其成爲積極的。
一個不重要
$num = $num <= 0 ? $num : -$num ;
,或者更好的解決辦法,恕我直言:
$num = -1 * abs($num)
由於@VegardLarsen已經發布,
可避免明確的乘法爲了簡短,但我更喜歡shortne的可讀性SS
我建議避免的if/else(或相當於三元運算符),特別是如果你要處理多個項目(在一個循環或使用lambda函數),因爲它會影響性能。
「如果浮點數爲負值,則爲正值。」
爲了改變一個數字,你可以的符號簡單地做:
$num = 0 - $num;
,或者乘以-1它,當然:)
這是不是倒退? – 2009-09-17 11:06:10
行動,對不起,只是顛倒了順序:) – drAlberT 2009-09-17 11:08:10
哈,好的...一秒鐘我就懷疑自己的理智了。 – 2009-09-17 11:10:08
如何像一些小事:
反相:
$num = -$num;
轉換隻能正轉負:
if ($num > 0) $num = -$num;
轉換隻負爲正:
if ($num < 0) $num = -$num;
$float = -abs($float);
我覺得濃湯的答案很好。有些人喜歡這種花哨的表達,做同樣的事情:
$int = (($int > 0) ? -$int : $int);
編輯:顯然,你正在尋找一個功能,這將使底片積極的爲好。我認爲,這些問題的答案是簡單的:
/* I am not proposing you actually use functions called
"makeNegative" and "makePositive"; I am just presenting
the most direct solution in the form of two clearly named
functions. */
function makeNegative($num) { return -abs($num); }
function makePositive($num) { return abs($num); }
爲什麼要使用_abs()_時使用?羅。 – drAlberT 2009-09-17 13:45:02
重新編輯:「此外,我需要一種方法來執行相反的如果浮子爲負,使之成爲積極的」
$number = -$number;
將數字更改爲與其相反。
function invertSign($value)
{
return -$value;
}
感謝您評論爲什麼downvoted。真的很有用。 – 2016-12-10 04:13:00
function positive_number($number)
{
if ($number < 0) {
$number *= -1;
}
return $number;
}
使用阿爾伯特和丹道的解決方案:
負到正,反之亦然
$num = $num <= 0 ? abs($num) : -$num ;
浮動;)我的壞。 – dotty 2009-09-17 11:05:53