在PHP中更改数字的符号?

dot*_*tty 58 php math numbers sign

我有一些花车:

-4.50
+6.25
-8.00
-1.75
Run Code Online (Sandbox Code Playgroud)

如何将所有这些更改为负浮动,以便它们变为:

-4.50
-6.25
-8.00
-1.75
Run Code Online (Sandbox Code Playgroud)

我还需要一种方法来做相反的事情

如果浮动是负数,则使其为正数.

drA*_*erT 155

一件微不足道的事

$num = $num <= 0 ? $num : -$num ;
Run Code Online (Sandbox Code Playgroud)

或者,更好的解决方案,恕我直言:

$num = -1 * abs($num)
Run Code Online (Sandbox Code Playgroud)

正如@VegardLarsen发布的那样,

为了简洁,可以避免显式乘法,但我更喜欢可读性而不是短暂性

我建议避免使用if/else(或等效的三元运算符),特别是如果你必须操纵一些项目(在循环中或使用lambda函数),因为它会影响性能.

"如果浮动是负面的,那就是积极的."

要更改数字的符号,您可以简单地执行以下操作:

$num = 0 - $num;
Run Code Online (Sandbox Code Playgroud)

或者,乘以-1,当然:)

  • 哈,好吧......有一秒钟,我怀疑自己的理智. (2认同)

Veg*_*sen 46

$float = -abs($float);
Run Code Online (Sandbox Code Playgroud)

  • “我还需要一种相反的方法”,这个答案只做一件事...... (2认同)

Gum*_*mbo 30

琐碎的事情怎么样:


Sil*_*ost 12

重新编辑:"我还需要一种方法来做反向如果浮动是负面的,那就是积极的"

$number = -$number;
Run Code Online (Sandbox Code Playgroud)

将数字更改为相反的数字.