Informática
Diseño de páginas web dinámicas

Tu Instituto Online
   


 
Nivel Básico PHP: Variables y tipos de datos
Duración aproximada: 2 sesiones
   
Objetivos Objetivos
  • Conocer y diferenciar los tipos de datos
  • Declarar y usar variables
  • Usar las funciones de comprobación de tipos
   
Fuentes de información Fuentes de información
   
Contenidos
Contenidos
   
 

1.- Introducción

Una vez tenemos instalado y configurado el servidor PHP, así como Apache, y dados los conocimientos básicos para declarar nuestro primer programa, tanto en estructura como en funcionamiento, estaremos en disposición de comenzar con los diferentes tipos de datos que soporta el lenguaje, así como su aplicación a las diferentes variables que podemos declarar. Por ello en esta unidad explicaremos los diferentes tipos de datos que tenemos disponibles, así como la definición de variables a partir de estos tipos.

2.- Tipos de datos

Al igual que cualquier lenguaje de programación, PHP tiene un conjunto de tipos de datos disponibles. El hecho más curioso es que, en general, el tipo de dato de una variable no es decidido por el programador sino que lo decide el lenguaje en tiempo de ejecución, aunque podemos utilizar la instrucción settype para forzar el tipo de dato de una variable en los raros casos en que esto sea necesario.

Los tipos de datos posibles que puede almacenar una variable son los siguientes:

Tipo Descripción
Integer Números enteros
Double Números decimales
String Cadenas de texto
Boolean Valores Sí/No
Array Tipo especial de colección
Object Tipo especial de dato complejo

 

2.1.- Tipo Integer

Puede representar números enteros, tanto positivos como negativos. Además se puede utilizar tanto notacion decimal, como octal, hexadecimal y binaria. Cada una de ellas tiene su propia notación, de modo que los binarios comienzan por 0b, los octales comienzan por 0 y los hexadecimales por 0x.

Ejemplos: 1234, -45, 0123 (en octal), 0x23 (en hexadecimal), 0xFF (en hexadecimal), -820, 0b10 (en binario)

2.2.- Tipo Double

Representa números en coma flotante o reales, es decir, aquellos que contienen decimales. De hecho se puede utilizar la notación exponencial (e), tal y como podemos ver en los ejemplos.

Ejemplos: 5.87, 8.2e6, -99.98, 12E-9

2.3.- Tipo String

El tipo String permite el almacenamiento de cadenas de caracteres, las cuales pueden ser encerradas entre comillas dobles o simples. Su utilización es similar a la que se realiza en otros lenguajes de programación como C o C++.

Ejemplos: hola, Pepe, alumno

2.4.- Tipo Boolean

Representa los valores lógicos verdadero (true) y falso (false). Además son insensibles a las mayúsculas, con lo que podremos poner false o False. Asimismo los valores 0, 0.0, la cadena vacía y el string 0 tienen el valor false.

Ejemplos: True, 0, FALSE, True

2.5.- Tipo Array

Los vectores o arrays actúan tanto como vectores tradicionales (indexados por número) así también como vectores asociativos (indexados por clave). De esta forma, podremos indicar tanto la longitud del vector como sus elementos. Además sus elementos podrán ser de cualquier otro tipo de los que hemos explicado anteriormente.

Ejemplos: (True, Pepe, 5.87, -34)

2.6.- Tipo Object

El último de los tipos es especial ya que permite programar con orientación a objetos, de modo que, una vez definido el tipo de objeto que queremos representar (con sus atributos y métodos), podemos definir elementos de ese tipo.

3.- Variables

Una vez entendidos los tipos vamos a explicar qué son la variables. En PHP las variables contienen valores en memoria y se representan con un signo de dólar seguido por el nombre de la ésta. El nombre de la variable es sensible a minúsculas y mayúsculas, con lo que deberemos tener cuidado a la hora de fijar los nombres.

Los nombres de variables siguen las mismas reglas que otras etiquetas en PHP. Un nombre de variable válido tiene que empezar con una letra o un carácter de subrayado, seguido de cualquier número de letras, números y caracteres de subrayado.

Ejemplos: $nombre, $_apellidos, $nombre1

Además de las restricciones anteriores, existe un conjunto de variables predefinidas que no pueden ser utilizadas como nombre. Entre ellas se encuentran: $this, $GLOBALS, $_SERVER, $_GET, $_POST, $_COOKIES, $_FILES, $_ENV, $_REQUEST, $_SESSION.

A la hora de definir una variable se ha de tener en cuenta una determinada sintaxis:

$nombre_variable = valor

Es decir, indicaremos el nombre de la variable y, opcionalmente, un símbolo igual seguido del valor de inicialización. De este modo un ejemplo es:

En el que declaramos dos variables, una de tipo string y otra de tipo integer, y las utilizamos para imprimir sus valores en una determinada frase. Cuando declaramos variables de tipo string, siempre tenemos que poner el valor entre comillas, mientras que si la variable es de tipo numérico, no es necesario ponerlas ya que de lo contrario PHP la tratará como una cadena de caracteres. Así el resultado de la ejecución será:

 

No es necesario inicializar variables en PHP, sin embargo, es una muy buena práctica. Las variables no inicializadas tienen un valor predeterminado de acuerdo a su tipo dependiendo del contexto en el que son usadas: las booleanas se asumen como false, los enteros y flotantes como cero, las cadenas se establecen como una cadena vacía y los arrays se convierten en un vacíos.

Vamos a poner algunos ejemplo de variables de diferentes tipos:

Y el resultado es:

Si nos fijamos, cada variable de cada tipo se inicializa de una forma distinta. En concreto, el tipo booleano lo hemos inicializado a verdadero (true) y el tipo array a los valores Juana y Pepe.

  
Ejercicios
Ejercicio
   
 

En la teoría hemos visto los diferentes tipos de datos, asi como la definición de variables. Vamos a poner en práctica todo y para ello deberás crear un programa en PHP en el que se definan las siguientes variables y se imprima su valor (además en la parte superior de cada definición deberás indicar, con un comentario, el tipo de entre los estudiados):

Variable Valor
nombre Nacho
edad 20
casado false
nota 7.8
aficiones correr, leer
apellidos pérez pérez
provincia Valencia
graduado true

Una vez realizado guárdalo con el nombre variables01.php e implementa los dos ejemplos vistos en la teoría con los nombres variables02.php y variables03.php.

   
Contenidos
Contenidos
   
 

4.- Conversión y comprobación de tipos

Como hemos comentado en el punto dos, PHP gestiona automáticamente los tipos convirtiéndolos en función de los operandos y del operador. De esta forma si intentamos sumar '10' y 20 la accion que realizaría sería convertir la primera variable a numérica y de esa forma podria sumar 10+20=30.

Aparte de ésto, el lenguaje nos ofrece funciones especiales que nos permiten saber el tipo de variable que estamos usando y también realizar su conversión. Mostramos algunas de ellas y ejemplos que ilustran su uso:

  • gettype(): Devuelve el tipo de una variable

Ejemplo:

Resultado:

  • settype($variable,'tipo variable'): Transforma el tipo de variable del que haya decidido PHP por el que nosotros decidamos
  • is_array(): Comprueba si la variable es de tipo array

Ejemplo:

Resultado:

  • is_bool(): Comprueba si la variable es de tipo boolean

Ejemplo:

Resultado:

  • is_float(): Comprueba si la variable es de tipo double
  • is_integer(): Comprueba si la variable es de tipo integer
  • is_null(): Comprueba si la variable es nula
  • is_numeric(): Comprueba si la variable es numérica o string numérico

Ejemplo:

Resultado:

  • is_object(): Comprueba si la variable es de tipo objeto
  • is_resource(): Comprueba si la variable es un recurso
  • is_scalar(): Comprueba si la variable es escalar (integer, double, string o boolean)
  • is_string(): Comprueba si la variable es de tipo string
Ejercicios
Ejercicio
   
 

La conversión de tipos permite cambiar el tipo por defecto que PHP otorga a las variables, y las funciones de comprobación ofrecen posibilidades para conocer estos tipos. Implementa los cuatro ejemplos vistos en la teoría con nombres variables04.php, variables05.php, variables06.php y variables07.php. Además busca en Internet e implementa un ejemplo de cada una de las funciones is_integer, is_scalar, is_string, con los nombres variables08.php, variables09.php y variables10.php.

Comprímelo todo en un fichero llamado tipos.zip y súbelo a la plataforma.

   
Creditos Créditos
Licencia de Creative Commons

Este documento es de dominio público bajo licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 España.
TuInstitutoOnline.com M.Donoso, G.García, P.Gargallo, A.Martínez. v. 2.0.2.1.0

No se permite un uso comercial de la obra original ni de las posibles obras derivadas, la distribución de las cuales se debe hacer con una licencia igual a la que regula la obra original.

Los reconocimientos se realizan en el apartado Fuentes de información.

Los iconos empleados están protegidos por la licencia LGPL y se han obtenido de:
https://commons.wikimedia.org/wiki/Crystal_Clear
https://www.openclipart.org


Licencia de Creative Commons

Todas las capturas de pantalla tienen copyright y pertenecen a TuInsitutoOnline.com.

TuInstitutoOnline.com permite su uso siempre y cuando se muestren desde el dominio www.tuinstituoonline.com y NO PERMITE enlazar a ellas desde otros lugares.

Además, la estructura diseñada para mostrar el contenido de las unidades es propiedad de TuInstitutoOnline.com.

TuInstitutoOnline.com M.Donoso, G.García, P.Gargallo, A.Martínez. Versión 2021.