# abs

(PHP 4, PHP 5, PHP 7)

absValor absoluto

### Descripción

abs ( mixed `\$number` ) : number

Devuelve el valor absoluto de `number`.

### Parámetros

`number`

Valor decimal a convertir

### Valores devueltos

El valor absoluto de `number`. Si el argumento `number` es del tipo float, el valor devuelto es también del tipo float, siendo para los otros casos del tipo integer (debido a que float tiene normalmente un rango de valores mayor que integer).

### Ejemplos

Ejemplo #1 Ejemplo de abs()

``` <?phpecho abs(-4.2); // 4.2 (double/float)echo abs(5);    // 5 (integer)echo abs(-5);   // 5 (integer)?> ```

### User Contributed Notes 2 notes

17
eep2004 at ukr dot net
2 years ago
``` <?php\$arr = array();for (\$i = 0; \$i < 1000; \$i++) \$arr[] = rand(-100, 100);\$start = microtime(true);for (\$i = 0; \$i < 1000; \$i++){    foreach (\$arr as \$v) \$v = abs(\$v);}echo number_format(microtime(true) - \$start, 4).'<br />';\$start = microtime(true);for (\$i = 0; \$i < 1000; \$i++){    foreach (\$arr as \$v) if (\$v < 0) \$v = abs(\$v);}echo number_format(microtime(true) - \$start, 4).'<br />';\$start = microtime(true);for (\$i = 0; \$i < 1000; \$i++){    foreach (\$arr as \$v) if (\$v < 0) \$v *= -1;}echo number_format(microtime(true) - \$start, 4).'<br />';?>Result:1.40610.96970.2805Conclusion: better to check before using the feature that the number is less than zero. Even better use multiplication by -1 than this function. ```
-72
Ister
10 years ago
``` [*EDIT* by danbrown AT php DOT net: Merged user's corrected code with previous post content.] jeremys indicated one thing - there is no sgn function wich actually seems a bit strange for me. Of course it is as simple as possible, but it is usefull and it is a standard math function needed occasionally. Well, I have solved this function in a bit different matter: <?php function sgn(\$liczba) {     if(\$liczba>0)         \$liczba=1;     else if(\$liczba<0)         \$liczba=-1;     else if(!is_numeric(\$liczba))         \$liczba=null;     else         \$liczba=0;     return \$liczba; } ?> The difference is that it returns null when the argument isn't a number at all. ```