Comment utiliser la fonction floor() en PHP ?

php floor function
4.6/5 - (7 votes)

La fonction floor() de PHP permet d’arrondir un nombre décimal à l’entier inférieur le plus proche. Cette fonction retourne toujours un nombre flottant représentant l’entier immédiatement inférieur au nombre spécifié. Elle est utile dans diverses situations, notamment pour les calculs financiers, mathématiques ou statistiques.

 

 

Utilisation de base de la fonction floor() en PHP

 

La fonction floor() a une syntaxe simple et claire :

floor($nombre);

Elle prend un seul paramètre obligatoire :

  • $nombre : Le nombre flottant que vous souhaitez arrondir à l’entier inférieur.

 

 

Exemple d’utilisation de la fonction floor()

 

$nombre = 5.75;
$resultat = floor($nombre);
echo $resultat; // Affiche : 5

 

Dans cet exemple, le nombre décimal 5.75 est arrondi à l’entier inférieur 5.

 

Résultat de la fonction floor() :

 

5

 

 

Tableau d’exemples concrets d’utilisation de floor()

 

Valeur initiale Résultat avec floor()
3.1 3
-4.7 -5
9.999 9
-2.001 -3

 

 

Différences entre les fonctions floor(), ceil() et round()

 

Voici les principales différences à connaître entre ces fonctions d’arrondi PHP :

  1. floor() arrondit toujours vers le bas.
  2. ceil() arrondit toujours vers le haut.
  3. round() arrondit au nombre entier le plus proche.

 

Exemples comparatifs :

 

$nombre = 2.3;
echo floor($nombre); // Affiche : 2
echo ceil($nombre);  // Affiche : 3
echo round($nombre); // Affiche : 2

 

Résultat :

 

2
3
2

 

 

Comment parcourir un tableau avec la fonction floor()

 

Il est possible d’appliquer floor() à chaque élément d’un tableau en utilisant différentes boucles en PHP.

 

Avec la boucle foreach :

 

$nombres = [3.8, 5.4, -2.6, 7.9];
foreach ($nombres as $nombre) {
    echo floor($nombre) . " ";
}

 

Avec la boucle for :

 

$nombres = [3.8, 5.4, -2.6, 7.9];
$taille = count($nombres);
for ($i = 0; $i < $taille; $i++) {
    echo floor($nombres[$i]) . " ";
}

 

Avec la boucle while :

 

$nombres = [3.8, 5.4, -2.6, 7.9];
$i = 0;
while ($i < count($nombres)) {
    echo floor($nombres[$i]) . " ";
    $i++;
}

 

Sortie des boucles :

3 5 -3 7

 

 

Utilisation pratique de floor() pour calculer une pagination

 

La fonction floor() peut servir à déterminer facilement le nombre de pages nécessaires dans une pagination :

$totalArticles = 53;
$articlesParPage = 10;
$nombrePages = floor(($totalArticles - 1) / $articlesParPage) + 1;
echo $nombrePages; // Affiche : 6

 

Résultat :

6

 

Remplacer la fonction floor() par une conversion de type en PHP

 

Conversion en entier en PHP

 

Il est possible de remplacer floor() par un cast (conversion) vers un entier en PHP. Toutefois, cela fonctionne différemment pour les nombres négatifs :

$nombre = 4.9;
echo (int)$nombre; // Affiche : 4

$nombreNegatif = -4.9;
echo (int)$nombreNegatif; // Affiche : -4, au lieu de -5 avec floor()

 

Ainsi, le cast vers int coupe simplement la partie décimale sans tenir compte de la valeur négative. Utilisez donc floor() lorsque vous souhaitez une gestion cohérente des arrondis vers le bas.