PHP Manual
/
Variabler

Lokale variabler i PHP

22. 08. 2019

Lokale variabler er kun gyldige inden for kroppen af **funktion** eller **metode** (i objektorienteret programmering).

Hvis vi arbejder i forbindelse med et almindeligt script, sker alt som forventet:

$x = 5;
echo $x; // udskriver 5

Men når vi definerer en brugerdefineret funktion, ændres opførslen en smule:

$x = 5;
function mojeFunkce(): int
{
$x = 3;
echo $x; // udskriver 3
}
echo $x; // udskriver 5

Årsagen er, at variablen $x kun eksisterer i forbindelse med den aktuelle funktion eller metode. Denne adfærd er tilsigtet.

Hvis vi ønsker at overføre en værdi fra den omgivende kode til en funktion, skal vi kalde den med de nødvendige parametre:

echo mojeFunkce(5); // udskriver 6
function mojeFunkce(int $x): int
{
return $x + 1;
}

Værdier indtastes i funktioner ved hjælp af parametre. Hvis du vil sende yderligere variabler ind i funktionen ud over parametrene, kan du bruge globale variabler, men det er ikke en god idé.

Brugen af lokale variabler gør en stor forskel, når man programmerer et større program. Hvis vi ikke kunne skelne mellem variablers gyldighed på tværs af kontekster, ville det være umuligt at garantere, at en variabel ikke ville blive overstyret et sted, hvor vi ikke regner med den (hvilket er grunden til, at globale variabler er onde).

$x = 5;
$y = 3;
function soucet(int $x, int $y): int
{
return $x + $y;
}
echo $x; // udskriver 5
echo soucet($x, $y); // udskriver 8

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.
2.
Status:
All systems normal.
2024