Introduction à plusieurs méthodes pour conserver deux décimales en PHP

青灯夜游
Libérer: 2023-04-09 09:32:01
avant
8001 Les gens l'ont consulté

Introduction à plusieurs méthodes pour conserver deux décimales en PHP

1. Cas de non-portage

Par exemple, 3.149569 est pris à deux décimales, et le dernier deux chiffres ne peuvent pas être arrondis. Résultat : 3.14.

Vous pouvez utiliser la fonction étage

Cette fonction est l'arrondi. Par exemple, floor(4.66456) donne : 4 .

floor(9.1254) donne 9.

Par conséquent, pour supprimer deux décimales, vous devez d'abord multiplier par 100, puis arrondir, puis diviser par 100, soit :

$a=floor(3.149569*100)/100
Copier après la connexion

A ce moment, un bug apparaîtra dans les calculs en virgule flottante. Ce problème est résolu grâce à la fonctionnalité sans type de PHP. Tout d'abord, strval est converti en chaîne, puis le type est automatiquement reconnu. La fonction strval() a été utilisée pour calculer le pourcentage ci-dessous

Calculer le pourcentage

$successRate = floor(strval((2/3)*10000))/10000*100;
$result = $successRate.'%';
Copier après la connexion

2. >

fonction round

float round ( float val [, int precision])
Copier après la connexion
renvoie le résultat de l'arrondi val selon la précision spécifiée (le nombre de chiffres décimaux après la virgule).

la précision peut également être négative ou nulle (par défaut).

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.04
echo round(5.055, 2);    // 5.06
Copier après la connexion

fonction sprintf

implémente l'arrondi, et si elle n'a pas de décimales, elle remplira automatiquement la décimale spécifiée avec le caractère spécifié (spécifié 0) Nombre de chiffres

echo sprintf("%01.2f", 5.228);  //  5.23
echo sprintf("%01.2f", 5.224);  //  5.22
echo sprintf("%01.2f", 5);      //  5.00
Copier après la connexion

fonction number_format

S'il n'a pas de décimale, il le remplira automatiquement avec 0 au nombre de décimales spécifié

echo number_format(5.228,2);    //  5.23
echo number_format(5.224,2);    //  5.22
echo number_format(5,2);        //  5.00
Copier après la connexion

fonction d'arrondi

Cette fonction peut réaliser un arrondi, mais si elle n'a pas de décimales, elle n'aura pas de décimales après le traitement

echo round(5.228,2);    //  5.23
echo round(5.224,2);    //  5.22
echo round(5,2);        //  5
Copier après la connexion

php plus Méthode d'arrondi

echo ceil(4.4);     //  5
echo ceil(4.6);     //  5
Copier après la connexion

Méthode d'arrondi PHP

echo floor(4.4);        //  4
echo floor(4.6);        //  4
Copier après la connexion
Tutoriels associés recommandés : "Tutoriel PHP

"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal