Podstawy języka PHP
Kod PHP może być umieszczony w dowolnym dokumencie HTML wewnątrz znacznika języka skryptowego:
<?php
?>
Aby był on poprawnie wykonany, na serwerze, na którym znajduje się strona WWW musi być zainstalowany i uruchomiony interpreter PHP. Jeżeli dodatkowo jako domyślny język skryptowy zdefiniuje się w systemie PHP, wówczas można korzystać ze skróconej wersji znaczników:
<?
?>
Najprostszą funkcją języka PHP jest wypisywanie tekstu na ekranie. Realizuje to funkcja
print("tekst do wypisania") lub echo("tekst do wypisania")
Tak więc naszą pierwszą stroną wykorzystującą PHP stanie się:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<meta content="text/html; charset=ISO-8859-2" http-equiv="Content-Type">
<TITLE> pierwsze PHP </TITLE>
</HEAD>
<BODY>
<?php
echo("Witaj!");
?>
</BODY>
</HTML>
Nie możemy używać kodu HTML bezpośrednio w znacznikach PHP. Bezpośrednio kod HTML można umieszczać w ten sposób:
<?php
I część kodu PHP
?>
Kod HTML
<?php
II część kodu PHP
?>
Jest kilka sposobów na wyświetlanie tekstów:
<?php
print("Witaj świecie!");
print "Witaj świecie!";
echo("Witaj świecie!");
echo "Witaj świecie!";
print('Witaj świecie!');
print 'Witaj świecie!';
echo('Witaj świecie!');
echo 'Witaj świecie!';
?>
Różnicy pomiędzy ' a " nie ma żadnej. Wykorzystuje się ją w przypadku gdy w " musimy użyć ' i na odwrót.
Przykład:
<?php
echo "<a href='index.php'>Home</a>";
?>
Uwaga!
Każdą funkcję kończy znak średnik(;)
Podstawowe zasady obowiązujące w PHP
• pliki zawierające kod PHP zwykło się nazywać używając rozszerzenia *.php. Wcześniej w użyciu były również rozszerzenia *.php3 i *.php4, które jednak obecnie są w zaniku. Ważnym jest jednak, by wybrane przez nas rozszerzenie było w serwerze WWW skojarzone z interpreterem PHP
• treść skryptu musi zawierać się między znacznikami <?PHP .... ?> (lub <? .... ?> o ile na serwerze za domyślny język skryptowy przyjęto PHP)
• wszystkie kolejne polecenia PHP muszą być od siebie oddzielone średnikami
• jeśli istnieje konieczność połączenia wielu instrukcji w jedną (tak jak np. w komendzie warunkowej) wówczas wszystkie instrukcje są łączone za pomocą nawiasów sześciennych { ..... }, które są składniowo równoważne jednej instrukcji
• zmienne w PHP zawsze rozpoczynają się od znaku $
• wynik wypisywany przez PHP umieszczony wewnątrz strony HTML jest traktowany jako HTML, stąd można używać wszystkich dostępnych znaczników HTML, które potem będą normalnie interpretowane przez przeglądarkę osoby odwiedzającej naszą stronę
Operacje na liczbach
Podstawowe znaki matematyczne stosowane w PHP
* - znak mnożenia
/ - znak dzielenia
+ - znak dodawania
- - znak odejmowania
Ćwiczenie 1.
Otwórz Notatnik z wybranym językiem PHP i przepisujesz poniższy kod. Następnie zapisz go w folderze, z którego uruchamiasz skrypty php (na dysku twardym lub za pomocą ftp) a na koniec uruchom skrypt w przeglądarce www:
Wykonaj działanie 2*8+14 i wyświetl jego wynik
Rozwiązanie:
<?php
echo 2*8+14;
?>
Po otwarciu przeglądarki powinien pojawić się wynik 30.
Spróbujemy wyświetlić taki rezultat:
Rozwiązanie: 30
Można to zapisać tak:
<?php
echo "Rozwiązanie: ";
echo 2*8+14;
?>
Można też uprościć sprawę:
<?php
echo "Rozwiązanie: ".2*8+14;
?>
Uwaga!
Znak kropki (.) łączy apostrof z wartością poza nim.
Zmienne
W matematyce zmiennymi są litery a, b, c, h
Przykład wyrażenia:
a = 2
b = 6
c=a*b
c=2*6
c=12
W PHP jest podobnie tyle, że zmienna przyjmuje swoją nazwę i przed jej nazwą stosuje się znak dolara $
Powyższe wyrażenie zapiszmy tak samo tylko w PHP:
<?php
$a = 2; // Przypisywanie zmiennej a wartość 2
$b = 6; // Przypisywanie zmiennej b wartość 6
$c = $a*$b; // Przypisanie zmiennej c wartość iloczynu czynników a i b
echo "c=".$a."*".$b."<br />"; // Wyświetlanie wyrażenia
echo "c=".$c; // Wyświetlanie wartości wyrażenia
?>
Wartością zmiennych także może być tekst:
<?php
$text = "Ala";
$text1 = "ma";
$text2= "kota!";
?>
Zmienne można wyświetlić:
<?php
$text = "Ala";
$text1 = "ma";
$text2 = "kota!";
echo $text." ".$text1." ".$text2;
?>
Rezultat powinien wyglądać tak:
Ala ma kota
Wartością zmiennych może być prawda lub fałsz:
<?php
$prawda = TRUE;
$falsz = FALSE;
?>
Zmienne możemy dowolnie nazywać, jednak nazwy mogą być nieprawidłowe.
Nazwy prawidłowe:
<?php
$zmienna123456 = 12;
$zmienna_ciepla = 34;
?>
Nazwy nieprawidłowe:
<?php
$1zmienna = 34;
$ążź = 45;
$zmienna ciepla = 1;
$###12 = 'pies';
?>
Operatory
= = - jest równe
! = - jest różne
> - większe niż
< - mniejsze niż
> = - większe lub równe
< = - mniejsze lub równe
= = = - jest równe i tego samego typu (przydatne np. dla rozróżnienia 0 i FALSE)
|| - logiczna suma
&& - logiczny iloczyn
!l - logiczna negacja
Instrukcja warunkowa
Składnia instrukcji warunkowej:
<?php
if(wyrażenie_warunkowe){
instrukcja wykonywana jeśli spełniony zostanie warunek
} else if(inne_wyrażenie_warunkowe)(
instrukcja wykonywana jeśli spełniony zostanie drugi warunek, a pierwszy nie
}else{
instrukcja wykonywana jeśli nie zostanie spełniony żaden z warunków
}
?>
Wyrażeniem warunku może być dowolna wartość. Zobaczymy to na poniższym przykładzie:
<?php
$a = 2;
if($a == 2)
{
echo "a wynosi 2";
}
else
{
echo "a nie wynosi 2";
}
?>
Przykład 1
W poniższym przykładzie przeglądarka wyświetli nam 'Warunek został spełniony, gdyż 2 < 3
<?php
$a = 2;
if($a <= 3)
{
echo "Warunek został spełniony";
}
else
{
echo "Warunek nie został spełniony";
}
?>
Przykład 2
W poniższym przykładzie przeglądarka wyświetli nam "Warunek nie został spełniony", gdyż a = 'ZSRR'
<?php
$a = 'ZSRR';
if($a != 'ZSRR'){
echo "Warunek został spełniony";
} else {
echo "Warunek nie został spełniony";
}
?>
Przykład 3
W powyższym przykładzie zostanie wyświetlony napis "Jeden z warunków został wykonany.", gdyż przynajmniej jeden warunek został wykonany (b = 2)
<?php
$a = 1;
$b = 2;
if($a == 2 || $b == 2){
echo "Jeden z warunków został wykonany.";
} else {
echo "Żaden z warunków nie został wykonany!";
}
?>
Przykład 4
Przykład z użyciem 'AND'. Przeglądarka wysmaruje nam "Warunek nie został spełniony".
Widzimy, że a >=23, ale b nie jest >= 23. Automatycznie wykonanie instrukcji przechodzi do sekcji else.
Gdybyśmy tutaj zamiast && wstawili || to przeglądarka wykonała by I sekcję if.
<?php
$a = 23;
$b = 24;
if($a >= 23 && $b >= 23){
echo "Warunek został spełniony";
} else {
echo "Warunek nie został spełniony.";
}
?>
Przykład 5 - TRUE i FALSE
Ponieważ zmienna a istnieje, a więc przeglądarka wyświetli "Zmienna a istnieje!„
<?php
$a = 1;
if($a){
echo "Zmienna a istnieje!";
} else {
echo "Zmienna a nie istnieje!";
}
?>
Przykład 6 - elseif
<?php
$a = 1;
$b = 2;
if($a == 2){
echo "Warunek 1 został spełniony";
} elseif($b == 2){
echo "Warunek 2 został spełniony";
}else{
echo "Żaden z warunków nie został spełniony";
}
?>
Instrukcja switch
Jeżeli chcemy dodać dużą ilość warunków dotyczącej jednej zmiennej możemy ułatwić sobie prace i skorzystać z instrukcji switch.
<?php
$a = 2;
switch($a){
case 1:
echo "Zmienna a wynosi 1";
break;
case 2:
echo "Zmienna a wynosi 2";
break;
case 3:
echo "Zmienna a wynosi 3";
break;
default:
echo "Zmienna a jest większa od 3";
}
?>
Przeglądarka wydrukuje nam "Zmienna a wynosi 2", gdyż a wynosi 2. Wartość po słowie case może być dowolna, taka jak w przykładzie instrukcji warunkowych czyli TRUE, FALSE, "string".
Inkrementacja liczb
Inkrementacja, czyli numerowanie, inaczej zwiększanie za każdym razem liczby o jeden. Jest bardzo przydatne, gdy chcemy dodać do tabelki liczbę porządkową.
A teraz przykład:
<?php
$i = 1;
$i++; // Tutaj przebiega proces inkrementacji
echo $i;
?>
Pętla „for”
Jeśli chcemy, aby jakaś akcja wykonała się do jakiegoś czasu. Za pomocą pętli for możemy dokonać takiej operacji. Spójrzmy na składnię pętli:
for(tworzenie zmiennej; inicjacja warunku; modyfikowanie zmiennej)
{
blok wyrażeń
}
A, teraz stworzymy pętlę, która będzie się powtarzać dopóki wartość a nie osiągnie 6.
<?php
for($i=0;$i<7;$i++)
{
echo $i."<br />";
}
?>
W 2 wierszu tworzymy zmienną $i i przypisujemy jej wartość 0. Następnie dodajemy warunek ($i<7), że pętla ma być wykonana dopóki $i nie osiągnie wartości 7. Następnie zmienna jest inkrementowana.
W 4 wierszu wartość zmiennej jest wyświetlana.
Pętla „while”
Pętla niczym szczególnym nie różni się od pętli for. Pętla while od pętli for różni głównie się składnią.
<?php
while( warunek ){
...
instrukcje
...
}
?>
Stworzymy to samo co w przypadku pętli for.
<?php
$i = 0;
while($i < 7){
echo $i."<br />";
$i++;
}
?>
Przeglądarka wyświetli dokładnie to samo co w przypadku wcześniejszej pętli „for”
Pętla „do ... while”
Pętla „do ... while” wykonana jest tylko raz! Tylko wtedy gdy wartośc warunku zwraca TRUE czyli prawdę.
Składnia pętli „do ... while”:
<?php
do{
...
instrukcje
...
}while( warunek );
?>
Pętla „do ... while” -przykład
<?php
$i = 0;
do{
echo $i."<br />";
$i++;
}while($i < 7);
?>
Przerywanie i kontynuowanie pętli
Najpierw zajmiemy się kontynuowaniem (powtórzeniem) pętli. Służy do tego funkcja „continue”.
Przykład:
<?php
for($i = 1; $i <= 100; $i++){
if($i % 2 !=0){
continue;
}
echo $i;
}
?>
Nowy operator matematyczny!
Aby zwrócić resztę z dzielenia można skorzystać z wyrażenia: $a %= 2
W 3 linijce rozpoczynamy pętlę „for”. Widzimy, że pętla ma się wykonać 100 razy.
W 4 linijce jest tworzony warunek - jeżeli(reszta z dzielenia np 6:2 nie jest równe 0) to pętla ma być kontynuowana. Czyli zostaną wyświetlone tylko liczby parzyste do 100.
Przerywanie i kontynuowanie pętli
Jeśli nadejdzie moment, w którym chcemy wyjść z pętli całkowicie użyjemy do tego celu funkcji „break”.
Przykład:
<?php
$a = FALSE;
for($i=1; $i<17; $i++){
if($a == TRUE){
break;
}
echo $i." ";
}
?>
Przeglądarka wyświetli liczby od 1 do 16. Pętla nie zostanie przerwana gdyż sekcja if nie zostanie wykonana. Możemy zmienić Trzeci wiersz kodu z FALSE na TRUE i zobaczyć, że petla się nie wykona.