Inicio > Desarrollo web > Manipulación de tipos

Manipulación de tipos

PHP no requiere (o soporta) la definición explícita de tipos en la declaración de variables; el tipo de una variable es determinado por el contexto en el que la variable es usada. Lo que quiere decir que si asigna un valor de cadena a la variable $var, $var se convierte en una cadena. Si luego asigna un valor entero a $var, ésta se convierte en entera.

Un ejemplo de la conversión automática de tipos de PHP es el operador de adición ‘+’. Si cualquiera de los operandos es un flotante, entonces todos los operandos son evaluados como flotantes, y el resultado será un flotante. De otro modo, los operandos serán interpretados como enteros, y el resultado será también un entero.

Moldeamiento de Tipos

El moldeamiento de tipos en PHP funciona de forma muy similar a como ocurre en C: el nombre del tipo deseado es escrito entre paréntesis antes de la variable que debe ser moldeada.

<?php

$foo = 10;  

// $foo es un entero

$bar = (boolean) $foo;  

// $bar es un booleano

?>

Los moldeamientos permitidos son:

  • (int), (integer) – moldeamiento a entero
  • (bool), (boolean) – moldeamiento a booleano
  • (float), (double), (real) – moldeamiento a flotante
  • (string) – moldeamiento a cadena
  • (array) – moldeamiento a matriz
  • (object) – moldeamiento a objeto

gettype

string gettype( mixed var )

Devuelve el tipo de la variable PHP var.

Aviso
Nunca use gettype() para probar si una variable es de cierto tipo, ya que la cadena devuelta puede ser sujeta a cambios en versiones futuras. Asimismo, es lenta, ya que involucra la comparación de cadenas.

En su lugar, usa las funciones is_*.

Valores retornados

Los valores posible de la cadena devuelta son:

  • «boolean» (a partir de PHP 4)
  • «integer«
  • «double» (por razones históricas, «double» se devuelve en caso de un valor tipo float, y no «float»)
  • «string«
  • «array«
  • «object«
  • «resource» (a partir de PHP 4)
  • «NULL» (a partir de PHP 4)
  • «user function» (sólo PHP 3, valor obsoleto)
  • «unknown type»

Deberían utilizarse las siguientes funciones:

is_array()
is_bool()
is_float()
is_int()
is_null()
is_numeric()
is_object()
is_resource()
is_scalar()
is_string()

Devuelve true si la variable es del tipo especificado por la función, false en caso contrario.

..

Categorías: Desarrollo web Etiquetas: , , , ,
  1. No hay comentarios aún.
  1. No trackbacks yet.

Deja un comentario