Arrondir une valeur

Theophile76 Messages postés 2115 Statut Membre -  
Pitet Messages postés 2845 Statut Membre -
Bonjour,
J'ai un code php qui me donne une valeur (le total de "share" d'un article) :

<?php echo total(get_permalink( $post->ID )); ?>


Je voudrais arrondir cette valeur en utilisant des "K" et de "M"
(exemple : 12 555 donnerai 12,2k etc.)

J'ai trouvé une piste avec le code que voici mais étant débutant je ne sais pas du tout quoi en faire. J'ai essayé de "bidouiller" mais sans succès.


if ($value > 999 && $value <= 999999) {
    $result = floor($value / 1000) . ' K';
} elseif ($value > 999999) {
    $result = floor($value / 1000000) . ' M';
} else {
    $result = $value;
}


Pourriez vous m'aider ?
Merci.


3 réponses

Kaldoran Messages postés 146 Statut Membre 29
 
Salut,

Voici une facon assez simple en reprenant ton code :

function shortIt($value = 0 ) {
  if ($value > 999 && $value <= 999999) {
    $result = floor($value / 1000) . ' K';
  } elseif ($value > 999999) {
    $result = floor($value / 1000000) . ' M';
  } else {
    $result = $value;
  }
  return $result;
}


Tu met la fonction dans un fichier appart ou au debut de ton code puis :

<?php echo shortIt(total(get_permalink( $post->ID ))); ?>
0
mpmp93 Messages postés 7217 Statut Membre 1 340
 
Bonjour,

Vous avez aussi la fonction round():


<?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.05
echo round(5.055, 2);    // 5.06
?>
0
Pitet Messages postés 2845 Statut Membre 527
 
0