Position actuelle: Accueil> Derniers articles> La différence entre ceil () et round () et ses scénarios d'application

La différence entre ceil () et round () et ses scénarios d'application

M66 2025-06-05

En PHP, vous rencontrez souvent des scénarios qui doivent être "arrondis" lors du traitement des numéros de points flottants. À l'heure actuelle, Ceil () et Round () sont les deux fonctions les plus courantes. Bien qu'ils impliquent tous des nombres à virgule flottante aux conversions entières, leur comportement est très différent des scénarios applicables. Cet article présentera les différences entre ces deux fonctions en profondeur et analysera leurs scénarios d'utilisation appropriés.

1. CEIL () Fonction: Arrondissement

Ceil () est l'abréviation du plafond anglais (plafond). Comme son nom l'indique, sa fonction est de contourner un nombre vers le haut. Quelle que soit la partie fractionnaire, tant qu'elle n'est pas un entier, ceil () l'ajoutera et renverra l'entier plus grand le plus proche.

Exemple d'utilisation:

<code> Echo Ceil (4.2); // Sortie 5 Echo Ceil (-4.2); // sortie -4 </code>

Comme vous pouvez le voir, Ceil () est "en ajoutant un" pour des nombres positifs, tandis que pour des nombres négatifs, il est arrondi dans le sens de "zéro", c'est-à-dire "devenir plus petit".

Scénarios d'application:

  1. Calculez le nombre total de pages dans la logique de pagination <br> Lorsque vous connaissez le nombre total d'enregistrements et le nombre de pièces affichées par page, vous devez généralement utiliser ceil () pour calculer le nombre total de pages.

    <code> $ total_items = 105; $ items_per_page = 10; $ total_pages = ceil ($ total_items / $ items_per_page); // Le résultat est 11 </code>
  2. Les prix sont complétés pour éviter les pertes <br> Par exemple, lors de la définition du montant de paiement minimum sur un site Web de commerce électronique, il peut être nécessaire de rassembler le prix réduit.

    <code> $ Discouted_price = 19.2; $ final_price = ceil ($ discouted_price); // Le résultat est 20 </code>

2. Round () Fonction: Arrondi

Round () est une fonction qui tourne un nombre, ce qui peut rendre le nombre plus "humain". Par défaut, il tourne le point décimal, ou vous pouvez spécifier le nombre de décimales réservées via le deuxième paramètre.

Exemple d'utilisation:

<code> Echo Round (4.2); // Sortie 4 Echo Round (4,5); // Sortie 5 Echo Round (-4,5); // sortie -4 </code>

Il convient de noter que PHP's Round () utilise la "méthode d'arrondi bancaire", également connue sous le nom de "méthode d'arrondi à nombre". Lors du traitement des décimales à la fin de 0,5 , il décidera d'abandonner ou de transporter en fonction de la question de savoir si le chiffre précédent est un nombre pair.

<code> Echo Round (2.5); // Sortie 2 Echo Round (3,5); // Sortie 4 </code>

Cela évite les erreurs lorsqu'un grand nombre de nombres s'accumulent.

Scénarios d'application:

  1. Afficher les valeurs conviviales <br> Par exemple, si vous souhaitez afficher les cotes de produit:

    <code> $ moyen_rating = 4.666; Echo Round ($ moyen_rating, 1); // Sortie 4.7 </code>
  2. Équilibre numérique dans les systèmes financiers et comptables <br> La méthode d'arrondissement des banquiers peut réduire les erreurs cumulatives et est donc souvent utilisée dans les statistiques financières.

    <code> $ prix = 2,5; $ rond = Round ($ Price); // Le résultat est 2 </code>
  3. Traitement du traitement des données <br> Dans le graphique, un bon arrondi peut rendre les données plus intuitives et compréhensibles.

    <code> $ pourcentage = (45/123) * 100; Echo Round (pourcentage de $, 2); // Sortie 36.59 </code>

3. Résumez les différences et sélectionnez les suggestions

fonction Comportement Utiliser des scénarios
ceil () Vers le haut Logique de pagination, garantir que la valeur ne sera pas inférieure à la valeur d'origine
rond() Arrondi (même méthode de nombre) Affichage humanisé, calcul financier, contrôle de la précision des graphiques

Lorsque vous choisissez d'utiliser CEIL () ou Round () , la clé est de savoir si vous souhaitez vous assurer que le résultat n'est pas inférieur à la valeur d'origine (en utilisant ceil () ), ou vous voulez que le résultat soit plus proche de la représentation "moyenne" de la valeur d'origine (en utilisant Round () ).

Par exemple, vous développez un système de gestion du commerce électronique, en utilisant une telle fonction de pagination dans l'affichage de la pagination d'inventaire:

<code> Fonction getTotalPages ($ total_items, $ items_per_page) {return ceil ($ total_items / $ iteles_per_page); } </code>

Et si vous traitez avec un système de notation de satisfaction des utilisateurs, vous pouvez le faire:

<code> Fonction Formatrating ($ Rating) {return Round ($ Rating, 1); } </code>