PHP-datatyper, variabler, konstanter, Operatorer
โก Smart sammanfattning
PHP-datatyper, variabler och Operators utgรถr grunden fรถr varje PHP-skript. Denna genomgรฅng fรถrklarar hur PHP hรคrleder heltals-, flyttals-, strรคng- och booleska typer, hur variabler lagrar data, hur typomvandling fungerar och hur aritmetiska, tilldelnings-, jรคmfรถrelse- och logiska operatorer beter sig.

PHP-datatyper
En datatyp รคr klassificeringen av data i en kategori enligt dess attribut:
- Alfanumeriska tecken klassificeras som strรคngar
- Heltal klassificeras som heltal
- Numbers med decimaler klassificeras som flyttal.
- Sanna eller falska vรคrden klassificeras som booleska.
PHP รคr ett lรถst typat sprรฅk; det har inte explicit definierade datatyper. PHP bestรคmmer datatyperna genom att analysera attributen fรถr den data som tillhandahรฅlls. PHP stรถder implicit fรถljande datatyper:
- Heltal โ heltal t.ex. -3, 0, 69. Det maximala vรคrdet fรถr ett heltal รคr plattformsberoende. Pรฅ en 32-bitars maskin รคr det vanligtvis runt 2 miljarder. 64-bitars maskiner har vanligtvis stรถrre vรคrden. Konstanten PHP_INT_MAX anvรคnds fรถr att bestรคmma det maximala vรคrdet.
<?php
echo PHP_INT_MAX;
?>
Produktion:
9223372036854775807
- Flyttal โ decimaltal t.ex. 3.14. De รคr ocksรฅ kรคnda som dubbla eller reella tal. Det maximala vรคrdet fรถr ett flyttal รคr plattformsberoende. Flyttal รคr stรถrre รคn heltal.
- Karaktรคrsstrรคng โ t.ex. Hello World
- Boolean โ t.ex. Sant eller falskt.
Innan vi gรฅr in mer i detalj pรฅ att diskutera PHP-datatyper, lรฅt oss fรถrst diskutera variabler.
PHP-variabel
En variabel รคr ett namn som ges till en minnesplats som lagrar data under kรถrning.
Omfattningen av en variabel avgรถr dess synlighet.
En global PHP-variabel รคr tillgรคnglig fรถr alla skript i en applikation.
En lokal variabel รคr endast tillgรคnglig fรถr skriptet som den definierades i.
Tรคnk pรฅ en variabel som ett glas som innehรฅller vatten. Du kan tillsรคtta vatten i glaset, dricka upp allt, fylla pรฅ det igen osv. Detsamma gรคller fรถr variabler.
Variabler anvรคnds fรถr att lagra data och tillhandahรฅlla den lagrade datan vid behov. Precis som i andra programmeringssprรฅk stรถder รคven PHP variabler. Lรฅt oss nu titta pรฅ de regler som fรถljs nรคr man skapar variabler i PHP.
- Alla variabelnamn mรฅste bรถrja med dollartecknet, t.ex.
- Variabelnamn รคr skiftlรคgeskรคnsliga; detta betyder att $my_var skiljer sig frรฅn $MY_VAR
- Alla variabelnamn mรฅste bรถrja med en bokstav, fรถljt av andra tecken, t.ex. $my_var1. $1my_var รคr inte ett giltigt variabelnamn.
- Variabelnamn fรฅr inte innehรฅlla nรฅgra mellanslag. โ$first nameโ รคr inte ett giltigt variabelnamn. Du kan istรคllet anvรคnda ett understreck istรคllet fรถr mellanslaget, t.ex. $first_name. Du kan inte anvรคnda tecken som dollar- eller minustecken fรถr att separera variabelnamn.
Lรฅt oss nu titta pรฅ hur PHP bestรคmmer datatypen beroende pรฅ attributen fรถr den angivna datan.
<?php
$my_var = 1;
echo $my_var;
?>
Produktion:
1
Flyttal
<?php
$my_var = 3.14;
echo $my_var;
?>
Produktion:
3.14
Karaktรคrsstrรคngar
<?php $my_var = "Hypertext Pre Processor"; echo $my_var; ?>
Produktion:
Hypertext Pre Processor
Anvรคndning av variabler
Variabler hjรคlper till att separera data frรฅn programalgoritmerna.
Samma algoritm kan anvรคndas fรถr olika indatavรคrden.
Anta till exempel att du utvecklarping ett kalkylatorprogram som adderar tvรฅ tal. Du kan skapa tvรฅ variabler som accepterar talen, sedan anvรคnder du variabelnamnen i uttrycket som utfรถr additionen.
Variabel typgjutning
Utfรถra aritmetiska berรคkningar med hjรคlp av variabler pรฅ ett sprรฅk som t.ex C# krรคver att variablerna รคr av samma datatyp.
Typgjutning รคr att konvertera en variabel eller ett vรคrde till en รถnskad datatyp.
Detta รคr mycket anvรคndbart nรคr du utfรถr aritmetiska berรคkningar som krรคver att variabler รคr av samma datatyp.
Typcasting i PHP gรถrs av tolken.
Pรฅ andra sprรฅk som C# mรฅste du casta variablerna. Koden nedan visar typ casting i C#.
Diagrammet nedan visar PHP implementera exemplet ovan.
PHP lรฅter dig ocksรฅ casta datatypen. Detta kallas explicit casting. Koden nedan demonstrerar explicit typcasting.
<?php
$a = 1;
$b = 1.5;
$c = $a + $b;
$c = $a + (int) $b;
echo $c;
?>
Produktion:
2
Ovanstรฅende kod matar ut 2. Funktionen var_dump anvรคnds fรถr att bestรคmma datatypen. Koden nedan visar hur man anvรคnder funktionen var_dump.
<?php $a = 1; var_dump($a); $b = 1.5; var_dump($b); $c = "I Love PHP"; var_dump($c); $d = true; var_dump($d); ?>
Produktion:
int(1) float(1.5) string(10) "I Love PHP" bool(true)
PHP konstant
Definiera konstant โ en konstant รคr en variabel vars vรคrde inte kan รคndras under kรถrning.
Anta att vi utvecklarping ett program som anvรคnder vรคrdet fรถr PI 3.14. Vi kan anvรคnda en konstant fรถr att lagra dess vรคrde.
Lรฅt oss nu titta pรฅ ett exempel som definierar en konstant.
<?php define('PI', 3.14); // creates a constant with a value of 3.14 echo PI; ?>
Nรคr du vรคl definierar PI som 3.14, kommer kod som PI = 4; att generera ett fel, eftersom PI har definierats som en konstant och det dรคrfรถr inte รคr tillรฅtet att tilldela den ett vรคrde.
PHP Operatorer
Aritmetiska operatorer
Aritmetiska operatorer anvรคnds fรถr att utfรถra aritmetiska operationer pรฅ numeriska data. Konkateneringsoperatorn arbetar pรฅ strรคng vรคrden ocksรฅ. PHP stรถder fรถljande operatรถrer.
| Operator | Namn | BESKRIVNING | Exempelvis | Produktion |
|---|---|---|---|---|
| + | Dessutom | Summering av x och y | 1 + 1; | 2 |
| - | Subtraction | Skillnaden mellan x och y | 1 - 1; | 0 |
| * | Multiplikation | Multiplicerar x och y | 3 * 7; | 21 |
| / | division | Kvotient av x och y | 45/5; | 9 |
| % | PHP-modul | Ger resten av divisionen av x och y | 10 % 3; | 1 |
| -n | negation | Omvandlar n till ett negativt tal | -(-5); | 5 |
| x . y | sammanlรคnkning | Sรคtter ihop x och y | "PHP". โROCKSโ;10 . 3; | PHP ROCKS103 |
Uppdrag Operatorer
Tilldelningsoperatorer anvรคnds fรถr att tilldela vรคrden till variabler. De kan ocksรฅ anvรคndas tillsammans med aritmetiska operatorer.
| Operator | Namn | BESKRIVNING | Exempelvis | Produktion |
|---|---|---|---|---|
| x = y | Uppdraget | Tilldelar vรคrdet av y till x | $ x = 5; | 5 |
| x += y | Dessutom | รkar vรคrdet pรฅ x med y | $x = 2;$x += 1; | 3 |
| x -= y | nedantraction | Subtracts y frรฅn vรคrdet av x | $x = 3; $x -= 2; | 1 |
| x *= y | multiplikation | Multiplicerar vรคrdet av x, y gรฅnger | $x = 0;$x *= 9; | 0 |
| x /= y | delning | Kvotient av x och y | $x = 6;$x /= 3; | 2 |
| x %= y | modul | Resten av att dividera x med y | $x = 3;$x %= 2; | 1 |
| x = y | sammanfoga | Sรคtter ihop fรถremรฅl | $x = 'Snyggt';$x .= 'Coolt!'; | Ganska cool! |
Jรคmfรถrelseoperatรถrer
Jรคmfรถrelseoperatorer anvรคnds fรถr att jรคmfรถra vรคrden och datatyper.
| Operator | Namn | BESKRIVNING | Exempelvis | Produktion |
|---|---|---|---|---|
| x == y | Lika | Jรคmfรถr x och y, och returnerar sedan sant om de รคr lika | 1 == โ1โ; | Sant eller 1 |
| x === y | identiska | Jรคmfรถr bรฅde vรคrden och datatyper. | 1 === โ1โ; | Falskt eller 0, eftersom 1 รคr ett heltal och "1" รคr en strรคng |
| x != y, x <> y | PHP Inte lika | Jรคmfรถr vรคrdena pรฅ x och y, returnerar sant om vรคrdena inte รคr lika | 2 != 1; | Sant eller 1 |
| x > y | Stรถrre รคn | Jรคmfรถr vรคrdena pรฅ x och y, returnerar sant om x รคr stรถrre รคn y | 3 > 1; | Sant eller 1 |
| x < y | Less รคn | Jรคmfรถr vรคrdena pรฅ x och y, returnerar sant om x รคr mindre รคn y | 2 < 1; | Falskt eller 0 |
| x >= y | Stรถrre รคn eller lika med | Jรคmfรถr vรคrdena pรฅ x och y, returnerar sant om x รคr stรถrre รคn eller lika med y | 1 >= 1 | Sant eller 1 |
| x <= y | Less รคn eller lika | Jรคmfรถr vรคrdena pรฅ x och y, returnerar sant om x รคr mindre รคn eller lika med y | 8 <= 6 | Falskt eller 0 |
logiska operatorer
Nรคr du arbetar med logiska operatorer utvรคrderas alla tal som รคr stรถrre รคn eller mindre รคn noll (0) till sant. Noll (0) utvรคrderas till falskt.
| Operator | Namn | BESKRIVNING | Exempelvis | Produktion |
|---|---|---|---|---|
| x och y, x och y | Och | Returnerar sant om bรฅde x och y รคr sanna | 1 och 4;Sant && Falskt; | Sant eller 1False eller 0 |
| x eller y, x || y | Or | Returnerar sant om antingen x eller y รคr sant | 6 eller 9;0 || 0; | Sant eller 1False eller 0 |
| x x eller y | Exklusiv eller, xor | Returnerar sant om endast x รคr sant eller endast y รคr sant | 1 xor 1; 1 xor 0; | Falskt eller 0Sant eller 1 |
| !x | Inte | Returnerar sant om x รคr falskt och falskt om x รคr sant | !0; | Sant eller 1 |


