Cours ⇒ Cour PHP facebook twitter youtube

Les fonctions ⇒ & Fonctions mathématiques



Les fonctions présentées ici fonctionnent uniquement avec des entiers signés sur 32 bits
et des nombres à virgule flottante. Pour des traitements mathématiques plus poussés,
reportez-vous à l’extension BCMath

Connaître les extrémités

La fonction max() retourne la plus grande valeur numérique parmi les valeurs passées en
paramètres.

   max (arg1 , arg2 [, ... ])


Si le premier paramètre est un tableau, max() retourne la plus grande valeur de ce tableau.
Si le premier paramètre est un entier, une chaîne ou un nombre à virgule flottante, max()
requiert au moins deux paramètres et retourne alors le plus grand d'entre eux. Le nombre
d'arguments est alors illimité.
Si au moins une valeur est un nombre à virgule flottante, elles seront toutes traitées
comme des nombres à virgule flottante

<?php
         echo max(1, 3, 5, 6, 7); // 7
         echo max(array(2, 4, 5)); // 5
         ?>

Avec plusieurs tableaux, la fonction max() fait les comparaisons de gauche à droite et
renvoie un tableau.

AUTRE

<?php
         $val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7)
         ?>

 

La fonction min()

est l'opposée de max(). Elle retourne la valeur la plus petite. Le fonctionnement
est en tout point identique à max().


Arrondir des valeurs

Trois fonctions permettent d'arrondir des nombres :

 round() renvoie l'entier le plus


proche,

 floor() arrondit à l'entier immédiatement inférieur 

et

ceil() retourne l'entier


immédiatement supérieur.
round (nombre [, précision] )
La fonction round() retourne la valeur arrondie du nombre passé en paramètre à l'entier
le plus proche. Si vous définissez une précision via le second paramètre, la fonction
arrondira alors à cette précision. Une précision négative permettra d'arrondir à une puissance
de 10. La valeur –2 permettra par exemple d'arrondir à la centaine.

  Arrondi supérieur
ceil (nombre )
Arrondi inférieur
floor(nombre )
<?php
         echo round(3.4); // Affiche 3
         echo '<br>';
         echo round(3.5); // Affiche 4
         echo '<br>';
         echo round(3.6); // Affiche 4
         echo '<br>';
         echo round(3.6, 0); // Affiche 4
         echo '<br>';
         echo round(1.95583, 2); // Affiche 1.96
         echo '<br>';
         echo round(1241757, -3); // Affiche 1242000
         ?>
<?php
         echo ceil(7.2); // 8
         echo ceil(99.999); // 100
       ?>
<?php
         echo floor(7.2); // 7
         echo floor(99.999); // 99
         ?>
         Créer des valeurs a

Créer des valeurs aléatoires

Par défaut, PHP utilise le générateur de nombres aléatoires du système avec la fonction


rand().

Cependant, nous vous recommandons d'utiliser la fonction

mt_rand()

car celle-ci
utilise le générateur de nombres aléatoires « Mersenne Twister », qui produit des
nombres utilisables en cryptographie et qui est quatre fois plus rapide.

mt_rand([minimum,maximum])

Pour obtenir un nombre entier entre 5 et 15 inclus, il faut utiliser mt_rand(5,15). Le rendu
de l'exemple suivant

<?php
         $salaire = mt_rand(1,6000) ;
         if ($salaire < 1000) {
         echo "Vous êtes payé $salaire _, c'est en dessous du SMIC";
         } elseif ($salaire < 3000) {
         echo "Avec $salaire _, vous êtes raisonnablement bien payé";
         } else {
         echo "$salaire _ ! Contactez-moi, votre travail m'intéresse !";
         ?> 

Travailler sur différentes bases

On travaille généralement avec des chiffres codés sur la base 10. Cependant, il est parfois
nécessaire de travailler sur des binaires (base 2) ou des hexadécimaux (base 16). Pour
gérer des conversions de nombres entre différentes bases, PHP propose la fonction

   base_convert() :
   base_convert (nombre , frombase , tobase )


La fonction base_convert() retourne une chaîne contenant l'argument nombre représenté
dans la base tobase. La base de représentation de nombre est donnée par frombase. frombase
et tobase doivent être compris entre 2 et 36 inclus. Les bases supérieures à 10 seront
représentées avec les lettres de a=10 à z=36. exemple
suivant.

<?php
         $binaire = base_convert(5531, 10, 2);
         echo $binaire;
         ?>

1010110011011

Des fonctions dédiées à une conversion donnée existent pour des accès rapides :

   • bindec() : convertit de binaire en décimal ;
   • decbin() : convertit de décimal en binaire ;
   • dechex() : convertit de décimal en hexadécimal ;
   • decoct() : convertit de décimal en octal.

Changer le fond
Oregionale Skin
7astuces
Sélectionnez un Fond (11)
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces
Fond de contenu
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces