Kapitel 7. Operatorer

Innehållsförteckning
Vad är en operator?
Mer läsning

Detta avsnitt beskriver vad operatorer är och hur man använder dem i ett PHP-script.

Vad är en operator?

En operator är något som verkar på en eller flera termer. Exempel på operatorer är +, -, * och / som gör precis vad ni tror att de gör.

Det finns olika typer av operatorer. Aritmetiska operatorer, som de ovan, opererar bara på tal. Sedan finns det tilldelningsoperatorer som gör tilldelningar och så vidare. Här kommer några av de vi kommer att jobba med:

Aritmetiska operatorer

Tabell 7-1. Aritmetiska operatorer

ExempelNamnResultat
$a + $bAdditionSumman av $a och $b
$a - $bSubtraktionDifferensen av $a och $b
$a * $bMultiplikationProdukten av $a och $b
$a / $bDivisionKvoten av $a och $b
$a % $bModulusResten av division mellan $a och $b

Tilldelningsoperatorer

Det finns bara en tilldelningsoperator och den heter helt enkelt "tilldelas". Den representeras av ett lika-med-tecken (=). Så här kan den användas:

Exempel 7-1. Tilldelningsoperatorn


<?php
$c = $a + $b; // Utläses, c tilldelas värdet av a + b
?>

					

Det finns vissa andra tilldelningsoperatorer, men dessa behöver ni inte kunna. Jag tar dem kort här.

Exempel 7-2. Tilldelningsoperatorerna += och -=


<?php
$a += 5; // Samma sak som $a = $a + 5
$a -= 5; // Samma sak som $a = $a - 5
?>

					

Jämförelseoperatorer

Jämförelseoperatorer arbetar på tal och returnerar alltid ett värde av typen boolean. Det vill säga true eller false.

Tabell 7-2. Jämförelseoperatorer

ExempelNamnResultat
$a == $bLika med Sant om $a är lika med $b.
$a != $bInte lika med Sant om $a inte är lika med $b.
$a < $bMindre än Sant om $a är mindre än $b.
$a > $bStörre än Sant om $a är större än $b.
$a <= $bMindre än eller lika med Sant om $a är mindre än eller lika med $b.
$a >= $bStörre än eller lika med Sant om $a är större än eller lika med $b.
$a === $bIdentiska Sant om $a är lika med $b och båda är av samma typ.
$a !== $bInte identiska Sant om $a inte är lika med $b eller om de inte är av samma typ.

Logiska operatorer

Som jag sade ovan så returnerar alltid de jämförande operatorerna av typen boolean och opererar på tal. Logiska operatorer returnerar alltid boolean, men opererar också bara på logiska termer.

Tabell 7-3. Logiska operatorer

ExempelNamnResultat
$a and $bOch Sant om $a och $b är sanna.
$a or $bEller Sant om $a eller $b är sanna.
$a xor $bExklusivt eller Sant om $a eller $b är sanna men inte båda två.
!$aInte/Icke Sant om $a inte är sant.

Strängoperatorer

Det finns tre operatorer som opererar på strängar, den första känner ni till sedan förut och det är tilldelningsoperatorn "tilldelas". Den fungerar lika på strängar som på tal. Sedan finns det två till. Dessa beskrivs lättast med ett exempel:

Exempel 7-3. Strängoperatorer


<?php
$s = "Kalle ";    //$a tilldelas "Kalle "
$t = $a . "Anka"; //$t innehåller nu "Kalle Anka"
$s = "Kalle ";
$s .= "Anka";     //Samma sak som $s = $s . "Anka"
?>

					

Mer läsning

Det står mycket om operatorer i PHP-Manualen ( http://www.php.net/manual/en/language.operators.php ).