Valores booleanos
Un dato booleano solo puede contener dos valores: true o false.
Cuando se convierten datos a booleano se cumplen las siguientes reglas:
- Un número (ya sea entero o flotante) convertido a booleano resulta en false si el valor original es cero, de otro modo, resulta en true.
- Una cadena es convertida a false solo si vacia o si contiene el caracter 0. Si contiene cualquier otro dato (inclusive muchos ceros) se convierte en true.
Valores numéricos
Los números enteros pueden ser declarados utilizando distintas nomenclaturas
1 2 3 4 5 6 7 8 9 10 11 12 13 |
//Decimal 10 -11 1452 //Octal 0666 0100 //Hexadecimal 0x123 0XFF -0x100 |
Los números flotantes también se pueden declarar con distintas nomenclaturas
1 2 3 4 5 6 7 8 |
//Decimal 0.12 1234.43 -.123 //Exponencial 2E7 1.2e2 |
Precauciones a considerar con los números
Se debe tomar en cuenta que la precisión y el rango dependen de la plataforma en la que se corra el script. Por ejemplo, en uno de 64bits, dependiendo de como se haya compilado PHP este podrá ser capaz de reprensentar un rango mas amplio que en una plataforma de 32bits.
PHP no hace procesos de seguridad con los desbordamientos, por lo que el resultado de una operación aparentemente sencilla como una suma puede tener catastróficas consecuencias en la fiabilidad de tu aplicación.
Es necesario tener en cuenta que el tipo de datos float no siempre es capaz de representar números en la forma en que se espera.
Consideremos, por ejemplo, esta declaración muy simple:
1 |
echo (int) ((0.1 + 0.7) * 10); |
Es de esperar que la expresión ((0.1 + 0.7) * 10) de como resultado 8 (y, de hecho, si se imprime sin la conversión a entero, se hace). Sin embargo, la instrucción da como salida 7. Esto sucede porque el resultado de la operación aritmética se almacena internamente como 7.999999 en lugar de 8, cuando el valor es convertido a int, PHP simplemente trunca la parte fraccionaria.
Cadenas
El tema de cadenas ya ha sido tratado en este post
¿Te gustó este artículo?
Si te gustó este artículo, te ha servido o aprendiste algo nuevo; compártelo en tus redes sociales o invítame un cafe.