PHP workshop for 2 days with Shopware, Sylius, PHPUnit and Codeception in Duisburg

abs

(PHP 4, PHP 5, PHP 7, PHP 8)

absValeur absolue

Description

abs(int|float $num): int|float

Retourne la valeur absolue du nombre num.

Liste de paramètres

num

La valeur numérique à traiter

Valeurs de retour

La valeur absolue du nombre num. Si le nombre est un nombre décimal, alors le type de retour est aussi nombre décimal, sinon c'est entier (car nombre décimal généralement à une intervalle de valeur plus large que entier).

Historique

Version Description
8.0.0 num n'accepte plus les objets internes qui supporte les conversions numériques.

Exemples

Exemple #1 Exemple avec abs()

<?php
echo abs(-4.2); // 4.2 (double/nombre à virgule flottante)
echo abs(5);    // 5 (entier)
echo abs(-5);   // 5 (entier)
?>

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
3
eep2004 at ukr dot net
7 months ago
<?php
echo 'PHP '.PHP_VERSION.'<br>';

$qty = 1000;
$arr = array();
for (
$i = 0; $i < $qty; $i++){
   
$arr[] = rand(-100, 100);
}

$start = microtime(true);
for (
$i = 0; $i < $qty; $i++){
    foreach (
$arr as $v){
       
$v = abs($v);
    }
}
echo
number_format(microtime(true) - $start, 4).'<br>';

$start = microtime(true);
for (
$i = 0; $i < $qty; $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 < $qty; $i++){
    foreach (
$arr as $v){
        if (
$v < 0) $v *= -1;
    }
}
echo
number_format(microtime(true) - $start, 4).'<br>';
?>
Result:
PHP 7.1.33
0.0910
0.0710
0.0550

Conclusion: better to check before using the feature that the number is less than zero. Even better use multiplication by -1 than this function.
To Top