PHP es un lenguaje débilmente tipado, aunque en la versión 7 incorporó la revisión de tipos en las funciones el lenguaje en sí lo sigue siendo.
Una de las ventajas de esto es que podemos castear o cambiar el tipo de una variable sin dificultad.
Lo que nos reúne hoy aquí son dos funciones que…
Dichas funciones son intval
y strval
La función intval
en PHP recibe un argumento de cualquier tipo y devuelve su representación como entero.
Su uso más frecuente es cuando queremos convertir una cadena a un entero:
A lo que regresa ya podemos sumarle o restarle cosas, o hacerle cualquier operación matemática, pues tenemos la certeza de que es un entero.
Con esta función igualmente podemos quitar los decimales de un número (como lo hicimos con JavaScript). Llamamos a la función y le pasamos un flotante.
La salida es 2. No importa si el número es 2.9 o 2.1, lo devuelve sin decimales. Incluso con 2.0001 devuelve 2.
Dado que intval
devuelve la representación entera de un número, y como segundo argumento recibe la base, podemos fácilmente llamarlo para que convierta un número binario a un decimal. Quedaría así:
La salida sería 13. Así de fácil sería convertir un binario a un decimal; es decir, un número en base 2 a base 10.
Este método es más fácil de explicar. Lo único que hace es obtener la representación de una variable, pero como string. Veamos esto:
Lo que devuelve strval
es una cadena a la cual podemos aplicarle los métodos de cadenas, y podremos estar seguros de que estamos trabajando con un string para evitar comportamientos raros.
Esta función no imprime arreglos, regresará simplemente la cadena “Array” o en versiones nuevas generará un error de que estamos intentando convertir un array a una cadena.
Si realmente queremos imprimir un arreglo usamos print_r
:
La salida es esta:
La función strval
, al usarla en objetos, llamará al método __toString
del mismo. Si no lo implementa, regresará la cadena “Object” o generará un error en las versiones más nuevas.
Para implementar el método __toString
en un objeto podemos declararlo en la clase:
Ahí tenemos a la clase mascota que únicamente tiene la propiedad nombre y el método ladrar, aunque eso no es lo importante; lo que importa es que implementa el método __toString
.
Podemos implementarlo como queramos, siempre y cuando regrese una cadena. Por cierto, se recomienda devolver el estado de la mascota; es decir, concatenar todas sus variables.
El punto es que al llamar a strval
y pasarle nuestra mascota así:
El resultado no es “Object” ni un error, es:
Soy de la clase mascota. Mi nombre es Maggie
También existen las funciones floatval y boolval para convertir variables a flotantes y booleanos respectivamente.
La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…
Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…
El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…
El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…
En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…
Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…
Esta web usa cookies.
Ver comentarios