OPERADORS ARITMÈTICS BÀSICS EN PHP

 

En PHP disposem dels operadors habituals en els diferents llenguatges de programació. Aquests operadors ens permeten realitzar operacions aritmètiques: suma, resta, multiplicació, divisió, etc. així com obtenir el mòdul o resta d'una divisió entre dos enters.

 

Nom

Exemple

Resultat

Exemple (amb

$a=8i $b=4

Suma

$a + $b

El resultat de la suma.

12

Resta

$a - $b

El resultat de la resta.

4

Multiplicació

$a * $b

El resultat de la multiplicació.

32

Divisió

$a / $b

El resultat de la divisió.

2

Resta o mòdul

$a % $b

La resta de la divisió de $a entre $b

0

Nota: Els números es converteixen sencers abans d'efectuar l'operació. És a dir, 9% 4.5 dóna com a resultat 1 i no 0 perquè calcula la resta de 9 entre 4, no de 9 entre 4.5

 

L'operador resta o mòdul és un operador útil en alguns processos repetitius en programació. Fixa't en els valors que pren quan van progressant els valors que pren una variable. En l'exemple que mostrem a continuació serveix per comptar fins a dos i començar de nou repetitivament.

$a

$a 3%

1

1

2

2

3

0

4

1

5

2

6

0

7

1

8

2

 

Cal destacar que l'operador% és d'ús exclusiu entre sencers. 7% 3 retorna 1 ja que la resta de dividir 7 entre 3 és 1. 8% 2 retorna 0 ja que la resta de dividir agost entre 2 és zero. Al valor obtingut l'anomenem mòdul (en altres llenguatges en lloc del símbol% ​​s'usa la paraula clau mod) i a aquest operador de vegades se li denomina "operador mòdul".

Encara que en altres llenguatges ha un operador de exponenciació per calcular potències, en PHP no és així. Per calcular una potència podem fer diverses coses:

a) Recórrer a multiplicar n vegades el terme. Per exemple min3 la podem calcular com min *min* min. Òbviament això no és pràctic per a potències d'exponents grans.

b) Fer servir un bucle que doni lloc a la repetició de l'operació multiplicació n vegades. Aquestes opcions les comentarem més endavant.

c) Utilitzar eines pròpies del llenguatge que permeten realitzar aquesta operació. Aquesta opció és la més senzilla. N'hi ha prou amb escriure pow (base, exponent) perquè PHP realitzi el càlcul de la potència. Per exemple pow (2, 3) retorna 2 elevat a 3 que resulta agost.

 

Les operacions amb operadors segueixen un ordre de prelació o de precedència que determinen l'ordre amb què s'executen. Amb els operadors matemàtics la multiplicació i divisió tenen precedència sobre la suma i la resta. Si hi ha expressions amb diversos operadors del mateix nivell, l'operació s'executa d'esquerra a dreta. Per evitar resultats no desitjats, en casos on pugui existir dubte es recomana l'ús de parèntesi per deixar clar amb quin ordre s'han d'executar les operacions. Per exemple, si dubtes si l'expressió 3*a/7+2 s'executarà en l'ordre que tu vols, especifica l'ordre desitjat utilitzant parèntesi: per exemple 3*((a/7)+2).

 

OPERADORS D'INCREMENT I DECREMENT

Nom

Exemple

Resultat

Pre-increment

++$a

Incrementa $a en un i després retorna $a

Post-increment

$a++

Retorna $a i després incrementa $a en un

Pre-decrement

-$a

Decrementa $a en un i després retorna $a

Post-decrement

$a--

Retorna $a i després decrementa $a en un.

 

++ I - són només vàlids per a variables numèriques i serveixen per incrementar una unitat el valor de la variable. Depenent d'on es col·loquin (abans o després de la variable) el resultat del càlcul pot diferir a causa del moment en què s'executa l'addició de la unitat.

Tenir en compte que ++, -, +=, -= i *= són expressions que sempre s'apliquen sobre variables. Per exemple no és vàlid escriure 2++ perquè 2 no és una variable. Totes aquestes operacions es poden substituir per una altra equivalent més evident. Molts programadors prefereixen no usar aquests operadors perquè fan menys llegible el codi. A altres programadors els agrada usar-los perquè els estalvia escriure. Nosaltres preferim no usar-los, però és cert que els pots trobar quan hagis de revisar el codi escrit per una altra persona.

 

 

EXEMPLE

Escriu aquest codi en un editor com Notepad ++ i guardeu amb un nom de fitxer com ejemplo1.php. A continuació, puja el fitxer al servidor i visualitza el resultat.

<? Php

$a=8 ;

echo $a++;

echo "<br/>" ;

echo $a;

?>

 
 
exemple php

Escriu aquest altre codi i guardeu amb un nom de fitxer com ejemplo2.php. A continuació, puja el fitxer al servidor i visualitza el resultat.

<? Php

$a=8 ;

echo $a++;

echo "<br/>" ;

echo $a;

?>

 

operadors aritmètics php
 

En els dos exemples anteriors podem observar clarament la diferència entre el pre-increment i el post-increment. El mateix passa amb el pre-decrement i post-decrement.

 

OPERADORS D'ASSIGNACIÓ

Amb l'ús dels operadors d'assignació, podrem simplificar (escriure abreujadament) algunes expressions d'assignació. No et recomanem que utilitzis expressions abreujades durant l'aprenentatge bàsic del PHP. No obstant això, és adequat conèixer el significat d'aquestes expressions per si t'enfrontes a haver d'interpretar codi escrit per altres persones.

Nom

Exemple

Resultat

Suma

$a += $b;

$a = $a + $b;

Resta

$a -= $b;

$a = $a - $b;

Multiplicació

$a *= $b;

$a = $a * $b;

Divisió

$a /= $b;

$a = $a / $b;

Resta o mòdul

$a %= $b;

$a = $a % $b;

 

Els operadors + =, - = i * = són formes abreujades d'escriure operacions habituals. Tenir en compte que ++, -, + =, - = i * = són expressions que sempre s'apliquen sobre variables.

 

 

EXERCICI 1

Crea un codi PHP on creus les variables $primerNumero i $ segonNumero i assigna valor 8 al primer número i 5 al segon número:

a) La resta de dividir el primer nombre entre 5.

b) El resultat de dividir el primer nombre entre el segon.

c) El resultat de sumar els dos nombres.

 

 

EXERCICI 2

Crea un codi PHP on creus les variables $a i $b i usant els operadors adequats fes que es mostrin els següents missatges per pantalla. Nota: per mantenir els valors inicials de les variables i poder tornar a emprar-los servir variables auxiliars, per exemple $inici = $a; et permetrà mantenir en $inici el valor original de $a i tornar a recuperar el valor inicial de $a abans de fer una nova operació.

Missatges a mostrar per pantalla:

Operadors d'increment

Valors inicials: a = 4, b = 2

Operador ++ (anterior): ++a * b == 10

(Ara el valor de a és: 5)

Operador ++ (posterior): a++ * b == 8

(Ara el valor de a és: 5)

Operador - (anterior): --a * b == 6

(Ara el valor de a és: 3)

Operador - (posterior): a-- * b == 8

(Ara el valor de a és: 3)

 

Operadors d'assignació compostos

Valors inicials: a = 4, b = 2

Assignació composta de suma: a += b equival a = a + b

(Ara el valor de a és: 6)

Assignació composta de resta: a -= b equival a = a - b

(Ara el valor de a és: 2)

Assignació composta de multiplicació: a *= b equival a = a * b

(Ara el valor de a és: 8)

Assignació composta de divisió: a /= b equival a = a / b

(Ara el valor de a és: 2)

Assignació composta de mòdul: a %= b equival a = a% b

(Ara el valor de a és: 0)