Les types
<<<
Dépassement de capacité des entiers Conversion en entiers
>>>

4.2.3 Entiers
4.2 Les types
4 Référence
 Manuel PHP

->Dépassement de capacité des entiers
Conversion en entiers

4.2.3.1 Dépassement de capacité des entiers

Si un nombre est hors de l'intervalle de validité des entiers, il sera interprété comme un float .

<?php
  $large_number
=  2147483647;
  
var_dump($large_number);
// affiche : int(2147483647)

var_dump( 0x80000000 );
// affiche : float(2147483648)

var_dump( 25/7 );
// affiche : float(3.5714285714286)
?>
De même, si une fonction ou un opérateur retourne un entier qui est hors des limites de validité des entiers, il sera aussi automatiquement converti en float .

<?php
  $million
= 1000000;
  
$large_number =  50000 * $million;
  
var_dump($large_number);
// affiche : float(50000000000)
?>

En PHP, il n'y a pas de division entière. 1/2 sera un nombre 1agrave; virgule flottante ( float ) de valeur 0.5 .

Attention

Malheureusement, il y a un bug dans le moteur (corrigé en 4.1.0), qui fait que PHP que fonctionne pas toujours bien lorsque des nombres négatifs sont utilisés. Lorsque les deux opérandes sont positifs, il n'y a pas de problèmes. Par exemple : -50000 * $million , conduit à -429496728 .

<< Dépassement de capacité des entiers >>
Les types Entiers Conversion en entiers