Integer en PHP

17-08-2013 - Andrés Cruz

Integer en PHP

Este material forma parte de mi curso y libro completo; puedes adquirirlos desde el apartado de libros y/o cursos.

Un entero o integer por definición es un número con signo sin parte decimal; la misma regla se aplica en PHP.

Notaciones de los enteros en PHP

Los integer pueden ser especificados mediante notación decimal (base 10), hexadecimal (base 16), octal (base 8) o binaria (base 2), opcionalmente precedidos por un signo (- o +) según sea el caso:

  • Para usar la notación octal, se antepone al número un 0 (cero).
  • Para usar la notación hexadecimal, se antepone al número un 0x.
  • Para usar la notación binaria, se antepone al número un 0b.

Ejemplo: Enteros literales en php

<?php
$a = 1234; // número decimal
var_dump($a);
$a = -123; // un número negativo
var_dump($a);
$a = 0123; // número octal (equivalente a 83 decimal)
var_dump($a);
$a = 0x1A; // número hexadecimal (equivalente a 26 decimal)                    
var_dump($a);
$a = 0b11;
var_dump($a);// número binario (equivalente a 3 en decimal) 
?>

Al interpretar el código anterior:

int(1234) 
int(-123) 
int(83) 
int(26) 
int(3)

Rango de un integer en php (desbordamiento de enteros)

Si PHP encuentra un número fuera de los límites de un integer, se interpretará como un float en vez de un integer.

Ejemplo: Desbordamiento de enteros en sistemas 32-bits en php

<?php
$large_number = 2147483647;
var_dump($large_number);                      

$large_number = 2147483648;
var_dump($large_number);                      

?>

Al interpretar el código anterior:

int(2147483647)
float(2147483648)

Ejemplo: Desbordamiento de enteros en sistemas 64-bits en php

<?php
$large_number = 9223372036854775807;
var_dump($large_number);                      

$large_number = 9223372036854775808;
var_dump($large_number);                      

?>

Al interpretar el código anterior:

int(9223372036854775807)
float(9.2233720368548E+18)

Andrés Cruz
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz en Udemy

Acepto recibir anuncios de interes sobre este Blog.

Conozca nuestros cursos sobre Laravel, CodeIgniter, Flutter, Electron, Django, Flask y muchos más!

Ver los cursos
¡Hazte afiliado en Gumroad!

!Cursos desde!

4$

En Academia

Ver los cursos

!Libros desde!

1$

Ver los libros
!Web Alojada en Hostinger!