Zmienne PHP
- Poprzednia strona Gramatyka PHP
- Następna strona Echo / Print PHP
Zmienne są pojemnikami przechowującymi informacje:
Przykład
<?php $x=5; $y=6; $z=$x+$y; echo $z; ?>
Podobnie jak w algebrze
x=5 y=6 z=x+y
W algebrze używamy liter (np. x) do przechowywania wartości (np. 5).
Z wyrażenia z=x+y możemy obliczyć, że wartość z wynosi 11.
W PHP te trzy litery są nazywaneZmienne.
Komentarz:Zobacz na zmienne jako pojemniki przechowujące dane.
Zmienne PHP
Jak w algebrze, zmienne w PHP mogą być używane do przechowywania wartości (x=5) i wyrażeń (z=x+y).
Nazwa zmiennej może być krótka (np. x i y), ale może również być bardziej opisowa (np. carname, total_volume).
Zasady zmiennych w PHP:
- Zmienne zaczynają się od znaku $, po którym następuje nazwa zmiennej
- Nazwa zmiennej musi zaczynać się od litery lub znaku podkreślenia
- Nazwy zmiennych nie mogą zaczynać się od liczby
- Nazwy zmiennych mogą zawierać tylko znaki alfanumeryczne i podkreślenia (A-z, 0-9 oraz _)
- Nazwy zmiennych są wrażliwe na wielkość liter ($y i $Y to dwie różne zmienne)
Komentarz:Nazwy zmiennych w PHP są wrażliwe na wielkość liter!
Tworzenie zmiennych PHP
PHP nie ma polecenia tworzenia zmiennych.
Zmienne są tworzone po raz pierwszy, gdy są im przypisywane wartość:
Przykład
<?php $txt="Hello world!"; $x=5; $y=10.5; ?>
Po wykonaniu powyższych instrukcji, zmienna txt będzie zawierać wartość Hello world!, zmienna x będzie zawierać wartość 5, a zmienna y będzie zawierać wartość 10.5.
Komentarz:Jeśli przypisujemy wartość tekstową do zmiennej, wartość tę należy otoczyć znakami przecinka.
PHP jest językiem słabo typowanym
W powyższym przykładzie zauważ, że nie musimy informować PHP o typie danych zmiennej.
PHP automatycznie konwertuje zmienne na odpowiedni typ danych na podstawie ich wartości.
W językach takich jak C i C++ oraz Java, programista musi zadeklarować nazwę i typ zmiennej przed jej użyciem.
PHP zmienna obszar działania
W PHP można zadeklarować zmienną w dowolnym miejscu w skrypcie.
Obszar działania zmiennej to część skryptu, w której zmienna może być odwoływana/używana.
PHP ma trzy różne obszary działania zmiennych:
- local (lokalne)
- global (globalne)
- static (statyczne)
Local i Global obszar działania
FunkcjaPozaZadeklarowane zmienne mają obszar działania Global, dostępne tylko poza funkcją.
FunkcjaWewnętrznieZadeklarowane zmienne mają obszar działania LOCAL, dostępne tylko wewnątrz funkcji.
Poniższy przykład testuje zmienne z lokalnym i globalnym obszarem działania:
Przykład
<?php $x=5; // Obszar globalny function myTest() { $y=10; // Obszar lokalny echo "<p>Testowanie zmiennych wewnątrz funkcji:</p>"; echo "Zmienna x jest: $x"; echo "<br>"; echo "Zmienna y jest: $y"; } myTest(); echo "<p>Testowanie zmiennych poza funkcją:</p>"; echo "Zmienna x jest: $x"; echo "<br>"; echo "Zmienna y jest: $y"; ?>
W powyższym przykładzie mamy dwie zmienne $x i $y oraz funkcję myTest(). $x jest zmienną globalną, ponieważ została zadeklarowana poza funkcją, podczas gdy $y jest zmienną lokalną, ponieważ została zadeklarowana wewnątrz funkcji.
Jeśli wyświetlimy wartości dwóch zmiennych wewnątrz funkcji myTest(), $y wyświetli wartość deklarowaną lokalnie, ale nie będzie można wyświetlić wartości $x, ponieważ został utworzony poza funkcją.
Ponieważ, jeśli wyświetlimy wartości dwóch zmiennych poza funkcją myTest(), wyświetli się wartość $x, ale nie wartość $y, ponieważ jest to zmienna lokalna, utworzona wewnątrz myTest().
Komentarz:Możesz tworzyć lokalne zmienne o tej samej nazwie w różnych funkcjach, ponieważ zmienne lokalne są rozpoznawane tylko przez funkcję, w której zostały utworzone.
Słowo kluczowe global PHP
Słowo kluczowe global jest używane do dostępu do zmiennych globalnych wewnątrz funkcji.
Aby to zrobić, użyj słowa kluczowego global przed zmienną (wewnątrz funkcji):
Przykład
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // Wyjście 15 ?>
PHP przechowuje wszystkie zmienne globalne w tablicy o nazwie $GLOBALS[index]. Indeks zawiera nazwę zmiennej. Ta tablica jest dostępna również wewnątrz funkcji i może być używana do bezpośredniego aktualizowania zmiennych globalnych.
Przykład powyżej można napisać w następujący sposób:
Przykład
<?php $x=5; $y=10; function myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; } myTest(); echo $y; // Wyjście 15 ?>
Słowo kluczowe static PHP
Zwykle, po zakończeniu/uruchomieniu funkcji, wszystkie zmienne są usuwane. Jednakże, czasami potrzebuję, aby nie usuwać pewnej zmiennej lokalnej. Realizacja tego wymaga dodatkowych działań.
Aby to zrobić, użyj go przy pierwszym deklarowaniu zmiennej static Słowa kluczowe:
Przykład
<?php function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); ?>
Następnie, za każdym razem gdy funkcja jest wywoływana, informacja przechowywana przez tą zmienną jest informacją, która była zawarta w ostatnim wywołaniu funkcji.
Komentarz:Ta zmienna nadal jest zmienną lokalną funkcji.
- Poprzednia strona Gramatyka PHP
- Następna strona Echo / Print PHP