Diferencia entre revisiones de «PHP Operadores»
Ir a la navegación
Ir a la búsqueda
Nota: Información obtida de php.net.
Nota: Información obtida de php.net.
Nota: Información obtida de php.net.
Nota: Información obtida de php.net.
Nota: Información obtida de php.net.
Nota: Información obtida de php.net.
| (No se muestran 2 ediciones intermedias del mismo usuario) | |||
| Línea 27: | Línea 27: | ||
::<syntaxhighlight lang="php" line enclose="div" highlight="" > | ::<syntaxhighlight lang="php" line enclose="div" highlight="" > | ||
<?php | <?php | ||
| − | variableNumérica | + | $variableNumérica=5; |
| − | variableCadea='Ola'; | + | $variableCadea='Ola'; |
?> | ?> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Línea 77: | Línea 77: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | : | + | |
| − | + | : Pola contra, se empregamos === compara tipo e valor. Na expresión anterior 5 ==='5' xa non devolve true, porque comparamos int con string. | |
| + | |||
| + | : '''Nota: Ata a versión php 7''' se poñemos un valor de cadea nunha das variables tamén entrará no if, se a cadea ten valor '5' xa que comparamos 5 == '5'. Ao ter doble guión convirte a cadea a número e obtén true. | ||
| + | |||
| + | : '''Sempre que sexa posible mellor empregar === e !== para que compare valor e tipo.''' | ||
| Línea 121: | Línea 125: | ||
| + | == Operador nulo == | ||
| + | |||
| + | : O operador nulo compara se o valor anterior a el é nulo e se é o caso devolve un valor indicado por nos. | ||
| + | |||
| + | ::<syntaxhighlight lang="php" enclose="div" highlight="" > | ||
| + | <?php | ||
| + | $numero = null; | ||
| + | $valor = $numero ?? 1; | ||
| + | echo $valor; | ||
| + | ?> | ||
| + | </syntaxhighlight> | ||
<br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- (2016). | <br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- (2016). | ||
Revisión actual del 15:52 13 sep 2026
Sumario
Introdución
- Como en todas as linguaxes de programación imos ter operadores que aplicaremos a variables.
- Ditos operadores teñen unha precedencia.
- Por exemplo: 1 + 2 * 3 é igual 1+(2*3) xa que o operador de multiplicación ten máis precedencia que o da suma.
- Non necesitamos ter en conta as precedencias entre operadores se utilizamos parénteses nas nosas operacións :)
Precedencia de operadores
- No seguinte cadro aparecen os operadores por orde de precedencia (os que teñen máis 'peso' están arriba na táboa).
Operadores aritméticos
- No seguinte cadro aparecen os operadores aritméticos.
Operador de asignación
- O operador de asignación é =
1 <?php 2 $variableNumérica=5; 3 $variableCadea='Ola'; 4 ?>
- Tamén se pode facer unha asignación por referencia. Neste tipo de asignación temos dous variables 'apuntando' á mesma dirección de memoria. Polo tanto a modificación do valor nunha das variables fai que se modifique noutra variable.
1 <?php 2 $a = 3; 3 $b = &$a; // $b é unha referencia para $a 4 5 print "$a\n"; // amosa 3 6 print "$b\n"; // amosa 3 7 8 $a = 4; // cambia $a 9 10 print "$a\n"; // amosa 4 11 print "$b\n"; // amosa 4 tamén, dado que $b é unha referencia para $a 12 ?>
- Información obtida deste enlace.
Operadores tipo bit
- No seguinte cadro aparecen os operadores de tipo bit.
Operadores de comparación
- No seguinte cadro aparecen os operadores de comparación.
- IMPORTANTE:
- O operador == compara valores e se son de diferente tipo, fai unha conversión automática de tipo.
- Por exemplo:
$var1 = 5; $var2 = 5; if($var==$var1){ print("Son iguais"); }
- Pola contra, se empregamos === compara tipo e valor. Na expresión anterior 5 ==='5' xa non devolve true, porque comparamos int con string.
- Nota: Ata a versión php 7 se poñemos un valor de cadea nunha das variables tamén entrará no if, se a cadea ten valor '5' xa que comparamos 5 == '5'. Ao ter doble guión convirte a cadea a número e obtén true.
- Sempre que sexa posible mellor empregar === e !== para que compare valor e tipo.
- Este mesmo problema pode aparecer cando empregamos funcións que poden devolver distintos tipos de datos.
- Por exemplo:
function exemploFuncion(int $num): bool|string { if($num%2==0) { return true; // E par } else{ return 'Número incorrecto'; } }
- Se chamamos a funnción cun número que non sexa par e miramos se é true ou false da forma:
if(exemploFuncion(5)==true){ printf('É un número par...'); }
- Entrará no if e amosará o texto: É un número para.
- Teremos que empregar o === para que compare tipo e valor e así non entraría.
Operadores de incremento/decremento
- No seguinte cadro aparecen os operadores de incremento/decremento.
Operadores lóxicos
- No seguinte cadro aparecen os operadores lóxicos.
Operador nulo
- O operador nulo compara se o valor anterior a el é nulo e se é o caso devolve un valor indicado por nos.
<?php $numero = null; $valor = $numero ?? 1; echo $valor; ?>
-- Ángel D. Fernández González -- (2016).