Operadores en PHP

php Operadores

Tabla de contenidos


Los operadores PHP incluyen operadores aritméticos, operadores de asignación, operadores de incremento / decremento, operadores de comparación, operadores lógicos, operadores de matriz, operadores ternarios y operadores de comparación combinados. El operador toma uno o más valores (o expresiones de acuerdo con las convenciones de programación) y da otro valor (para que la estructura misma se convierta en una expresión).

Los factores se pueden clasificar de acuerdo con el número de valores que toman, los operadores unarios toman solo un valor, como el (!) ( El operador de negación lógica ) o (++) ( el operador incremental ). En cuanto a los operadores binarios, toman dos valores, un buen ejemplo de los cuales son los conocidos operadores aritméticos (+) suma y (-) resta, además de la mayoría de los operadores proporcionados por PHP.

Una lista completa de operadores está disponible en la siguiente sección titulada Prioridad de factores, esta sección explica la prioridad de los operadores y su asociatividad, que controla cómo se manejan las expresiones que contienen varios operadores diferentes

Prioridad del operador

La prioridad de los operadores es determinar qué tan «fuertemente» el operador relaciona dos expresiones entre sí. Veamos la siguiente expresión: 1 + 5 * 3, la respuesta es 16, no 18, porque el factor de multiplicación (*) tiene prioridad sobre el factor de suma (+). Se pueden usar paréntesis para especificar la prioridad según sea necesario. Por ejemplo, el resultado de la expresión (1 + 5) * 3 es 18.

Operadores aritméticos

Operadores aritméticos matemáticos básicos (como suma, multiplicación, división … etc.).

OperadorNombreEjemploExplicación
+Adición$ a + $ bSuma de operandos
Sustracción$ a – $ bDiferencia de operandos
*Multiplicación$ a * $ bProducto de operandos
/División$ a / $ bCociente de operandos
%Módulo$ a% $ bResto de operandos
**Exponenciación$ a ** $ b$ a elevado a la potencia $ b

El operador de exponenciación (**) se ha introducido en PHP 5.6.

Los siguientes ejemplos demuestran los diferentes resultados obtenidos mediante el uso de diferentes operadores aritméticos:

<? php 
$x = 10; 
$y = 6;
echo ($x + $y); // salida 16
echo "<br>";
echo ($x- $y); // salida 4
echo "<br>";
echo ($x * $y); // salida 60
echo "<br>";
echo ($x / $y); // salida 1.6666666666667
echo "<br>"; 
echo ($x % $y); // salida 4 
?>

A partir de la versión PHP7 agregaron el operador divisor intdiv () , ejemplos del uso a continuación:

<?php
var_dump(intdiv(10, 3));
?>

Operadores de Asignación

El operador «=» es el operador de asignación base. A primera vista, podría pensar que este factor significa «igualdad», pero no lo es. La función de este operador es asociar el valor de la expresión del lado derecho con la expresión del lado izquierdo.

OperadorNombreEjemploExplicación
=Asignar$ a = $bEl valor del operando derecho se asigna al operando izquierdo.
+ =Agregar y luego asignar$a + =$bSuma igual que $ a = $ a + $ b
– =Restar y luego asignar$a – = $bResta igual que $ a = $ a – $ b
* =Multiplica y luego asigna$a * = $bMultiplicación igual que $ a = $ a * $ b
/ =Dividir y luego asignar
(cociente)
$a / = $bEncuentre el cociente igual que $ a = $ a / $ b
% =Dividir y luego asignar
(resto)
$a% = $bEncuentre el resto igual que $ a = $ a% $ b

Los siguientes ejemplos demuestran los diferentes resultados obtenidos al utilizar diferentes operadores de asignación:

<? php 
$x = 10; 
echo $x; // salida 10
echo "<br>";
$y = 20; 
$y + = 100;
echo $y; // salida 120
echo "<br>";
$z = 50;
$z - = 25;
echo $z; // salida 25
echo "<br>";
$i = 5;
$i * = 6;
echo $i; // salida 30
echo "<br>";
$j = 10;
$j / = 5;
echo $j; // salida 2
echo "<br>";
$ k = 15;
$ k% = 4;
echo $ k; // salida 3
?>

Operadores bitwise (bit a bit)

Los operadores binarios permiten estimar y manipular ciertos bits dentro de un entero.

OperadorNombreEjemploExplicación
YY$a y $bLos bits que son 1 tanto en $ a como en $ b se establecen en 1, de lo contrario 0.
|O (inclusive o)$a | $bLos bits que son 1 en $ a o $ b se establecen en 1
^Xor (Exclusivo o)$a ^ $bLos bits que son 1 en $ a o $ b se establecen en 0.
~No~ $aLos bits que son 1 se establecen en 0 y los bits que son 0 se establecen en 1
<<Desplazar a la izquierda$a << $bDesplazar a la izquierda los bits del operando $a $b pasos
>>Desplazar a la derecha$a >> $bDesplaza a la derecha los bits de $a operando en $b número de lugares

Operadores de comparación

Los operadores de comparación, como su nombre lo indica, permiten comparar dos valores diferentes.

OperadorNombreEjemploExplicación
==Igual$a == $bDevuelve VERDADERO si $ a es igual a $ b
===Idéntico$a === $bDevuelve VERDADERO si $ a es igual a $ b, y son del mismo tipo de datos
! ==No es identico$a! == $bDevuelve VERDADERO si $ a no es igual a $ b, y no son del mismo tipo de datos
! =No es igual$a! = $bDevuelve VERDADERO si $ a no es igual a $ b
<>No es igual$a <> $bDevuelve VERDADERO si $ a no es igual a $ b
<Menos que$ a <$ bDevuelve VERDADERO si $ a es menor que $ b
>Mas grande que$ a> $ bDevuelve VERDADERO si $ a es mayor que $ b
<=Menos que o igual a$a <= $bDevuelve VERDADERO si $ a es menor o igual que $ b
> =Mayor qué o igual a$a> = $bDevuelve VERDADERO si $ a es mayor o igual que $ b
<=>Astronave$a <=> $bDevuelve -1 si $ a es menor que $ b
Devuelve 0 si $ a es igual $ b
Devuelve 1 si $ a es mayor que $ b

Los siguientes ejemplos demuestran los diferentes resultados obtenidos al utilizar algunos operadores de comparación:

<? php
$x = 100; 
$y = "100";

var_dump ($x == $y);
echo "<br>";
var_dump ($x === $y);
echo "<br>";
var_dump ($x! = $y);
echo "<br>";
var_dump ($x! == $y);
echo "<br>";
$a = 50;
$b = 90;
var_dump ($a > $b);
echo "<br>";
var_dump ($a < $b);
?>

Operadores de control de errores

PHP admite solo un operador de control de errores, el signo @. PHP ignora todos los errores de cualquier expresión agregada a esta etiqueta.

OperadorNombreEjemploExplicación
@admina@file (‘non_existent_file’)Error de archivo intencional

Operadores de ejecución

PHP admite un solo operador de ejecución que es la etiqueta backtics («), y tenga en cuenta que no es la comilla simple. PHP intentará ejecutar lo que está escrito en estas dos etiquetas como comandos de shell y devolverá la salida.

OperadorNombreEjemploExplicación
»comillas invertidasecho `dir`;Ejecute el comando de shell y devuelva el resultado.
Aquí, mostrará los directorios disponibles en la carpeta actual.

Recuerde no confundir con las comillas invertidas («).

Operadores incrementales / decrecientes

PHP admite operadores previos y posteriores al incremento similares a los utilizados en C.

OperadorNombreEjemploExplicación
++Incremento++ $aIncrementar el valor de $a en uno, luego devolver $a
++ Incremento$a ++Devuelve $a, luego incrementa el valor de $a en uno
decremento– $aDisminuya el valor de $a en uno, luego devuelva $a
decremento$a–Devuelve $a, luego disminuye el valor de $a en uno

El siguiente ejemplo demuestra el resultado de usar el operador de incremento / decremento:

<? php
$x = 10; 
echo ++ $x; // salida 11
echo "<br>";
$y = 10; 
echo $y ++; // salida 10
echo "<br>";
$z = 5;
echo - $z; // salida 4
echo "<br>";
$i = 5;
echo $i--; // salida 5
?>

Operadores lógicos

Son operadores que se utilizan en operaciones lógicas (como AND, OR, XOR, etc.).

OperadorNombreEjemploExplicación
yY$a y $bDevuelve VERDADERO si tanto $ a como $ b son verdaderos
OO$a o $bDevuelve VERDADERO si $ a o $ b son verdaderos
xorXor$a xo $bDevuelve VERDADERO si $a o $b son verdaderos pero no ambos
!No! $aDevuelve VERDADERO si $a no es cierto
&&Y$a && $bDevuelve VERDADERO si $a y $b son verdaderos
||O$a || $bDevuelve VERDADERO si $a o $b son verdaderos

Operadores de String (cadena)

Hay dos  operadores para cadenas de texto . El primero es el operador de enlace (» .«) que conecta los dos operandos a cada lado. El segundo factor es el agente adhesivo (‘ .=‎‘) .

OperadorNombreEjemploExplicación
.Concatenación$a. $bConcatenar tanto $a como $b
. =Concatenación y asignación$a. = $bPrimero concatenar $a y $b, luego asignar la cadena concatenada a $a, por ejemplo, $a = $a. $b

Los siguientes ejemplos demuestran los diferentes resultados obtenidos mediante el uso de diferentes operadores de cadena:

<? php
$a = "Hola";
$b = $a. "¡mundo!";
echo $ b; // salida ¡Hola mundo! 
echo "<br>";
$x = "Hola";
$x. = "mundo!";
echo $x; // salida ¡Hola mundo! 
?>

Operadores de matrices (Arrays)

Son operadores cuyas operaciones se realizan sobre matrices.

OperadorNombreEjemploExplicación
+Unión$a + $yUnión de $ ay $ b
==Igualdad$a == $bDevuelve VERDADERO si $ ay $ b tienen el mismo par clave / valor
! =Desigualdad$a! = $bDevuelve VERDADERO si $ a no es igual a $ b
===Identidad$a === $bDevuelve VERDADERO si $ ay $ b tienen el mismo par clave / valor del mismo tipo en el mismo orden
! ==No identidad$a! == $bDevuelve VERDADERO si $ a no es idéntico a $ b
<>Desigualdad$a <> $bDevuelve VERDADERO si $ a no es igual a $ b

Los siguientes ejemplos demuestran los diferentes resultados obtenidos al utilizar algunos operadores arrays:

<? php
$x = array("a" => "rojo", "b" => "verde"); 
$y = array("c" => "azul", "d" => "amarillo"); 
$z = $x + $y; // $x y $y combinación de matrices
var_dump ($z);
echo "<br>";
var_dump ($x == $y);
echo "<br>";
var_dump ($x === $y);
echo "<br>";
var_dump ($x! = $y);
echo "<br>";
var_dump ($x <> $y);
echo "<br>";
var_dump ($x! == $y);
?>

Operadores de tipo

Se utiliza  instanceof para determinar si una variable es un objeto inicializado de una clase en particular.