En este artículo vamos a ver:
Las siguientes variables ¿Tienen el mismo valor?
Un operador es un símbolo que especifica una acción particular en una operación.
Ejemplo de concatenación de Strings
b) 4
c) 4 estaciones
d) 13 estaciones
b) Rojo
c) Azul
d) Amarillo
b) 4
c) 5
d) 6
b) 9
c) 24
d) 25
b) $1var
c) $VaR
d) &$var
6) ¿Cuál es el valor de $Rojo?
b) Verde
c) var
d) No se ejecuta por un error de sintaxis
En los siguientes artículos se seguirá profundizando en estos temas.
- Qué es un identificador, una variable y una constante.
- Tipos de datos. Cómo realizar conversiones entre ellos y funciones relacionadas.
- Los operadores del lenguaje.
Identificador
|
|
Color
num2
nombre_y_apellidos
|
Variable
|
|
$total = 13;
$nombre = “Ana”;
Ej. Variables variables
$a = 'Nombre';
$$a = 'Carrie';
echo $Nombre; //Carrie
|
Constante
|
|
define('IS_FULL',true);
define('MAX',50);
define('MIN',13.10);
define('NOMBRE','Ana');
|
*Se tienen en cuenta los caracteres ASCII desde el 127 a 255
Ejemplo de identificadores:
- Válidos: aux, _temporal, mi_nombre, var27
- No válidos: 2aux, tem&poral, mi(nombre
<?php $numero = 13; echo $Numero; ?>No, porque los identificadores son case-sensitive. Esto hace que $numero y $Numero sean dos variables distintas.
Las siguientes variables ¿Tienen el mismo valor?
<?php $a = true; $b = True; ?>Sí porque true, false y null son casos especiales. No son case-sensitive.
TIPOS DE DATOS
|
CASTING*
| ||
ESCALARES
|
Boolean
|
true/false (0)
|
(bool) / (boolean)
|
Integer
|
Decimal: 13, -8873
Octal: 0167, 0533
Hexadecimal: 0x3C6, -0x432
|
(int) / (integer)
$valor = (int)1.7 // 1
| |
Float
|
Decimal: 4.123525
Exponencial: 2.32e5
|
(float) / (double) / (real)
$valor = (float)27 // 27.0
| |
String
|
“Hola a todos”
([3] => 'a')
|
(string)
| |
COMPUESTOS
|
Array
|
$col[0] = “Rojo”;
$col = array(“Rojo”);
|
(array)
$valor = 13;
$avalor = (array)$valor;
$avalor[0]; // 13
|
Objetos
|
$bar = new foo;
|
(object)
$color = “Rojo”;
$ob = (object)$color;
$color->scalar; // “Rojo”
| |
OTROS
|
NULL
|
Variable que no tiene valor
| |
resource
|
Referencia a recursos externos que no son usados nativamente por PHP (ej. manejar ficheros, imágenes, ...)
|
*Un casting consiste en convertir valores de un tipo de datos a otro.
Ejemplo de castings
<?php $val = 3.9; $entero = (int)$val; // 3 $cadena = (string)$val; // 3.9 $val = 'doce'; $entero = (int)$val; // 0 $val = '3nueve'; $entero = (float)$val; //3 ?>
FUNCIONES RELACIONADAS CON LOS TIPOS DE DATOS
| |
string gettype($var)
|
Función que devuelve el tipo de datos de la variable $var.
$valor = “Hola”;
echo gettype($valor); // string
|
boolean settype($var,$type)
|
Función que convierte la variable $var al tipo $type. Si la conversión se realiza correctamente, devuelve true.
|
is_array(), is_bool(), is_float(), is_integer(), is_null(), is_numeric(), is_object(), is_resource(), is_string()
|
TIPOS DE OPERADORES
| |
Asignación
|
$a = 13;
$a +=13; $a -=13; $a *=13; $a /=13;
|
Aritméticos
|
$a + $b; $a++; ++$a;
$a - $b; $a--; --$a;
$a * $b;
$a / $b;
$a % $b; // Módulo
|
String
|
$a = “Ho” . “la”;
$a .= “ Mundo”; // “Hola Mundo”
|
A nivel de bit
|
$a & $b // Los bits que están activos en ambos
$a | $b // Los bits activos en $a y $b
$a ^ $b // Los bits activos en $a o $b, pero no en ambos
~$a // Se activan los bits desactivados y viceversa
$a << $b // Se desplazan los bits de $a a la izquierda $b veces
$a >> $b // Se desplazan los bits de $a a la derecha $b veces
|
Lógicos
|
$a && $b; $a AND $b; // true si ambos son true
$a || $b; $a OR $b; // true si uno es true
!$a; NOT $a; // true si es false; false si es true;
$a XOR $b; // true si sólo es true $a o $b
|
Igualdad
|
$a == $b // true si ambos son iguales
$a != $b // true si ambos son distintos
$a === $b // true si ambos son iguales y con el mismo tipo
$a !== $b // true si tienen distinto tipo o son distintos
|
Comparación
|
$a < $b; $a <= $b; $a > $b; $a >= $b;
($a == 13) ? 1 : 2; // Si es 13 devuelve 1, si no devuelve 2
|
Variables por referencia
|
$a = 13;
$b = &$a;
$b = 27; // $a => 27
|
Control de errores
|
Se coloca una @ delante de una expresión, para ignorar cualquier mensaje generado por ella.
|
<?php $nombre = 'Georgina'; $apellido1 = 'Sparks'; $apellido2 = 'Waldorf'; $nombre_completo = $nombre . ' ' . $apellido1; $nombre_completo .= $apellido2; echo $nombre_completo; // Georgina Sparks Waldorf ?>
EJERCICIOS
1) ¿Qué se mostrará por pantalla al ejecutar el siguiente código?
<?php $res = 1 + "3 estaciones"; echo $res; ?>a) No se puede ejecutar porque hay un error de sintaxis
b) 4
c) 4 estaciones
d) 13 estaciones
2) ¿Qué valor tendrá $a al final de la ejecución?
<?php $a = 'Verde'; $b = &$a; $b = 'Rojo'; $c = &$a; $a = 'Azul'; $c = 'Amarillo'; ?>a) Verde
b) Rojo
c) Azul
d) Amarillo
3) ¿Cuál es la salida del siguiente código?
<?php $a = 2; $a *= 3; --$a; echo $a++; ?>a) 3
b) 4
c) 5
d) 6
4) ¿Cuál es el resultado de la suma?
<?php $a = 0xC; $b = 010; $c = 5; $res = $a + $b + $c; ?>a) Alguna variable no es válida
b) 9
c) 24
d) 25
5) ¿Qué variable no es válida?
a) $_varb) $1var
c) $VaR
d) &$var
6) ¿Cuál es el valor de $Rojo?
<?php $var = 'Rojo'; $$var = 'Verde'; echo $Rojo; ?>a) Rojo
b) Verde
c) var
d) No se ejecuta por un error de sintaxis
7) Define una constante y una variable de tipo integer. Utiliza la función gettype para mostrar por pantalla el tipo de datos de la variable. Multiplícalas y muestra el resultado.
Comentarios
Publicar un comentario