Menu
- Aktualności
- Mój startup Nowy odcinek
- Blogi ekspertów
- Projektowanie WWW
- Planowanie
- Hosting i domeny
- Organizacja i nawigacja
- Webdesign i grafika
- Warsztat - programy
- Tutoriale Photoshop
- Programowanie i tworzenie
- XHTML, HTML i CSS
- JavaScript, DOM i AJAX
- jQuery
- PHP i SQL
- Flash i ActionScript
- Dostępność i WAI
- Promowanie stron
- Pozycjonowanie
- Reklama i marketing
- Monitoring i statystyki
- Publicystyka
- Artykuły ogólne
- Społeczności
- Praca i zarabianie
- Wywiady
- Standardy sieciowe
- Zasoby
- Kursy
- Recenzje książek
- Linki
Dla webmastera
Kursy
Zmienne
Zmienne
Jak w każdym języku programowania niezmiernie istotnym pojęciem jest pojęcie zmiennej. Czym jest zmienna? Zmienna przechowuje dane w trakcie wykonywania skryptu. Każda zmienna posiada swoją nazwę i wartość np.:
| $imie="Krzysztof"; $liczba1=30; $liczba2=30.1; |
Nazwy zmiennych
Zmienne jak już wspomniałem posiadają swoje nazwy, dzięki którym możemy się odwoływać do wartości danej zmiennej. Nazwy zmiennych mogą się składać z liter, cyfr i znaków podkreślenia. Nie mogą jednak rozpoczynać się od cyfry. Każdą nazwę zmiennej poprzedza się znakiem dolara "$". Oto prawidłowe nazwy zmiennych:
| $imie; $Imie; $MojeImie; $imie4; $moje_imie; |
Należy pamiętać, że w nazwach zmiennych jest uwzględniana wielkość liter. Oznacza to, że zmienne $imie i $IMIE to dwie różne zmienne i odwołując się do nich w programie należy zwrócić na to uwagę.
Typy zmiennych
Zmienne w PHP dzielą się na typy, np.: łańcuchy znakowe (string), liczby całkowite (integer), liczby zmiennoprzecinkowe (double).
W PHP nie jest wymagane wcześniejsze deklarowanie zmiennej, tj. wcześniejsze określanie typu zmiennej. Typ zmiennej jest automatycznie określany na podstawie wartości do niej przypisanej.
| $imie="Krzysztof" - zmienna typu string $liczba1=30 - zmienna typu integer $liczba2=30.4 -zmienna typu double |
Stwórzmy teraz prosty skrypt wykorzystujący zmienne
| <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" Content="tekst/html"; charset=iso-8859-2"> <TITLE>Nazywam się...</TITLE> </HEAD> <BODY> <? // Imię i nazwisko zostało zapamiętane w zmiennych, // a następnie wyświetlone za pomocą funkcji "print" $imie="Krzysztof"; $nazwisko="Nowak"; print("Nazywam się ".$imie." ".$nazwisko); ?> </BODY> </HTML> |
Po wykonaniu skryptu i przesłaniu go do przeglądarki na ekranie pojawi się tekst:
| Nazywam się Krzysztof Nowak |
Oczywiście ten sam efekt otrzymalibyśmy bez użycia zmiennych wystarczyłoby tylko zapisać print("Nazywam się Krzysztof Nowak"); .Jednak z użycia zmiennych płyną inne korzyści. Możemy zmienić ich wartość (chociaż nie przewiduję byś często zmieniał swoje imię) i wyświetlony tekst wyglądałby inaczej.
Przypisywanie wartości do zmiennych
Aby określić wartość danej zmiennej używamy znaku równości - to tzw. operator przypisania.
| $imie="Krzysztof" |
Typ zmiennej, jak już wspomniałem, zostanie zmieniony tak, by odpowiadał typowi danych zapisanych w tej zmiennej.
Wartość zmiennej typu string, czyli dowolny ciąg znaków, zapisujemy zawsze w cudzysłowach.
| $zmienna="To jest zmienna typu string"; |
Możemy również zapisać tę samą wartość w cudzysłowach pojedynczych:
| $zmienna='To jest zmienna typu string'; |
Jednak istnieje pewna różnica w stosowaniu obydwu cudzysłowów. W łańcuchach w podwójnych cudzysłowach następuje tak zwana interpolacja zmiennych. Oznacza to, że nazwy zmiennych zawartych w takich łańcuchach są zastępowane przez ich wartości.
| $imie="Krzysztof"; $nazwisko="Nowak"; $tekst="Nazywam się $imie $nazwisko"; |
Zmienna $tekst przyjmuje teraz wartość: Nazywam się Krzysztof Nowak
W przypadku użycia pojedynczych cudzysłowów:
| $tekst='Nazywam się $imie $nazwisko'; |
Zmienna $tekst przyjmie wartość: Nazywam się $imie $nazwisko.
Przyjrzyj się jeszcze naszemu skryptowi z wykorzystaniem funkcji "print":
| $imie="Krzysztof"; $nazwisko="Nowak"; print("Nazywam się ".$imię." ".$nazwisko); |
W celu połączenia ze sobą łańcuchów został tu użyty znak kropki. Inaczej operator połączenia łańcuchów.
| poprawnie | niepoprawnie |
| $tekst=$imie.$nazwisko | $tekst=$imie $nazwisko (błąd parsacji) |
| $tekst="$imie $nazwisko" | $tekst="$imie.$nazwisko" (kropka w tym przypadku jest znakiem, a nie operatorem połączenia.) |
| $tekst='$imie $nazwisko' (zmienna $tekst ma wartość: $imie $nazwisko) |
Wartości zmiennych typu integer (liczba całkowita) oraz double (liczba zmiennoprzecinkowa) zapisujemy bez cudzysłowów:
| $liczba=21; $inna_liczba=356; $kolejna_liczba=35.46; |
Na zmiennych obu tych typów można przeprowadzić działania matematyczne za pomocą operatorów np.: "+" "-" "*" "/"
Napiszmy prosty skrypt obliczający pole prostokąta.
| <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" Content="tekst/html"; charset=iso-8859-2"> <TITLE>Pole prostokąta<TITLE> </HEAD> <BODY> <? //W zmiennych zapisujemy boki prostokata nastepnie za pomocą operatora "*" obliczamy jego pole $bokA=10; $bokB=7; print("Pole prostokąta o bokach $bokA i $bokB wynosi: ".$bokA*$bokB); ?> </BODY> </HTML> |
Pobierz przykład: zmienne.zip>

