kurs php.doc

(79 KB) Pobierz
Wstęp do PHP

Kurs PHP

 

Wstęp do PHP

PHP jest stosunkowo nowym językiem programowania. Łączy w sobie zalety programowania w C i Perlu oraz niektóre elementy JavaScript. Nie ma wątpliwości, że w PHP piszę się o wiele prościej i szybciej niż skrypty w CGI. Nie ma sensu porównywania PHP i ASP ponieważ ASP świeżym językiem i jeszcze do końca nie dopracowanych, a poza tym w obecnym internecie o wiele prościej jest znaleźć konto z obsługą PHP lub CGI niż z ASP.

PHP zaliczane jest do języków interpretowanych tzn. że skrypty nie są wcześniej kompilowane tak jak np. w Delphi, Html tylko kod w momencie uruchamiania strony z rozszerzeniem *.php, *.php3 lub *.php4 jest wykonywany przez stosowny do tego program zwany interpreterom. I właśnie dlatego, aby móc testować na własnym komputerze skrypty, które będziesz pisać na włąsnym komputerze należy przed tym zainstalować własny serwer oraz interpreter PHP. Oczywiście skrypty można testować wysyłając je na serwer providera, który udostępnia obsługę PHP jednak stracisz na to o wiele więcej czasu. Opis konfiguracji komputera do obsługi PHP można znaleźć w dziale Artykuły.

Stwórzmy teraz swój pierwszy program. Otwórz dowolny edytor tekstowy i wpisz coś takiego:

<?
print("Witaj !!!");
?>

Zapisz plik w folderze htdocs w katalogu Apacha pod nazwą test.php3. Uruchom teraz przeglądarkę internetową i w miejsce adresu strony wpisz localhost/test.php3. Jeżeli na ekranie zobaczysz napis "Witaj" wszystko jest w porządku. Jak już możliwe zauważyłeś skrypt PHP jest objęty znacznikami

<?
?>

Dozwolony jest także zapis

<?php
?>

lub...

<SCRIPT LANGUAGE="php">
</SCRIPT>

We wnętrzu powyższych znaczników wstawia się całą treść, która ma zostać wygenerowana za pomocą skryptu. Aby wypisać dowolny tekst na ekran należy użyć funkcji print("Jakiś tekst"); No i w tej lekcji to już wszystko zapraszam do dalszych części kursu.

 

Zmienne i stałe

Zmienne i stałe są jednymi z podstawowych pojęć każdego języka programowania. Są to jakby pojedyncze fragmenty pamięci w których przechowywane są jakieś dane. Dzięki wykorzystaniu wcześniej zadeklarowanych zmiennych lub stałych mamy bardzo prosty dostęp do ich wartości. Możemy w każdej chwili zmienić wartość zmiennej.

W PHP jak w większości języków programowania interpretowanych przed wykorzystaniem zmiennych oraz stałych nie trzeba deklarować ich rodzaju. Każdą deklarację lub pobranie wartości z zmiennej poprzedza się znakiem dolara "$", za nim wstawia się dowolnie wymyśloną nazwę np:

$zmienna = "Ten tekst jest zapisany w zmiennej";

Teraz żeby w dowolny miejscu wypisać tekst znajdujący się w zmiennej zadeklarowanej powyżej wystarczy napisać coś takiego:

print("$zmienna");

Operacje na zmiennych można przeprowadzać za pomocą operatorów. Wszystkie podstawowe, najczęściej wykorzystywane wraz z omówieniem możesz znaleźć w poniższej tabeli.

Operator

Zastosowanie

Przykład

=

Przypisuje do zmiennej wartość znajdującą się po prawej stronie

$zmienna="Tekst lub liczba";

+=

Dodaje lewą stronę operatora do prawej

$zmienna="21";
$zmienna+="43";

-=

Odejmuję lewą stronę operatora do prawej

$zmienna="21";
$zmienna-="43";

*=

Mnoży lewą stronę operatora do prawej

$zmienna="21";
$zmienna-="43";

/=

Dzieli lewą stronę operatora do prawej

$zmienna="21";
$zmienna/="43";

++

Powiększa wartość zmiennej oo 1

$zmienna="20";
$zmienna++;

--

Pomniejsza wartość zmiennej o 1

$zmienna="20";
$zmienna--;



Jeżeli nadal nie rozumiesz zastosowania zmiennych nie masz się czym przejmować w dalszych częściach kursu analizując przykłady powinieneś zrozumieć ich zastosowanie.
Stałe nie różnią się bardzo od zmiennych. Różnice pomiędzy nimi właściwie wskazują już same nazwy. Wartości zmiennych można zmieniać podczas wykonywania skryptu, zaś po zadeklarowaniu stałej jej wartość pozostaje zawsze taka sama. Przykładowe tworzenie stałej wygląda następująco:

define("stala", "To jest tekst zapisany w stałej");
Teraz w dowolnym miejscu skruptu możesz pobrać wartość stałej w następujący sposób:

print(stala);

Instrukcje warunkowe

Instrukcje warunkowe są kolejną, rzeczą wykorzystywaną bardzo często we wszystkich językach programowania Dzięki nim wykonywany kod może zależeć od woli odwiedzającego stronę lub np. od daty. Instrukcje warunkowe w PHP mają podobną postać do instrukcji wykorzystywanej w JavaScript. Najprostsza deklaracja ma postać:

if(warunek1)
{
  ten kod jest wykonany, gdy jest spełniony warunek1
}
else
{
  ten kod jest wykonany, gdy nie został spełniony warunek1
}

Dodatkowo instrukcję warunkową w PHP możemy rozbudować o znacznik elseif np.:

if(warunek1)
{
  ten kod jest wykonany, gdy jest spełniony warunek1
}
elseif(warunek2)
{
  ten kod jest wykonany, warunek1 zwrucił wartość false, a warunek2 true
}
else
{
  ten kod jest wykonany, gdy nie został spełniony ani warunek1 ani warunek2
}

Dokładne wykorzystanie instrukcji warunkowych powinieneś zrozumieć czytając dalsze części kursu, lub analizując poniższy przykład. Ma on za zadanie pobranie do zmiennej $data nazwy dnia tygodnia. Jeżeli dniem jest Sobota(Saturday) lub Niedziela(Monday) wyświetla napis nareszcie Wickend w przeciwnym wypadku wyświetla napis "Kiedy wreszcie będzie ten Wickend":

<?
$data = date("l");

if(($data == Saturday) or ($data == Monday))
{
  print("Nareszcie Wickend");
}
else
{
  print("Kiedy wreszcie będzie wickend");
}
?>

 

 

Tablice

Tablice można nazwać jakby pewnym rodzajem zmiennych. Są to ich zbiory pod jedną nazwą. Wykorzystywanie tablic jest o tyle korzystniejsze, że wartości poszczególnych elementów możemy wyświetlić za pomocą pętli. I tak np. zamiast tworzenia po kolei zmiennych element1, element2, element3 możesz utworzyć tablicę z poszczególnymi indexami np.:

$Element[0] = "Wartość pierwsza";
$Element[1] = "Wartość druga";
$Element[2] = "Wartość trzecia";

lub...

$Element[] = "Wartość pierwsza";
$Element[] = "Wartość druga";
$Element[] = "Wartość trzecia";

Obie powyższe inicjalizację tablic są identyczne, różnią się pomiędzy sobą tylko tym, że wykorzystanie drugiego sposobu jest korzystniejsze. A to dlatego, że za każdym razem gdy chcemy dopisać do tablicy nową wartość nie musimy określać jej indexu. Tak jak w przypadku przykładu pierwszego. No i to jest kolejna różnica pomiędzy zmiennymi, a tablicami. Jeżeli nie znamy ilości zmiennych, które powinny zostać utworzone powinniśmy właśnie wtedy wykorzystać tablicę z przypisywaniem wartości do zmiennych tak jak w przykładzie drugim. PHP przychodzi nam z pomocą i pozwala dodawać elementy do tablicy jeszcze w jeden sposób. Gdybyśmy mieli tablicę wypełnić listą imion za pomocą obojętne którego wcześniej podanego przykładu, mogło by to być uciążliwe. Dlatego została stworzona funkcja array którą można wykorzystać w ten sposób:

$Imiona = array("Michał", "Tomek", "Jarek", "Natalia", "Karolina", "Aneta");

Za pomocą tak napisanego kody kolejne elementy są przypisane do kolejnych wartości index'ów. Żeby teraz wyświetlić pierwsze imię można napisać to tak:

print("Imię o indexie 0 to $Imiona[0]");

W ten sam sposób wypisuję się wartości wszystkich tablic. No tak, ale wciąż nie napisałem że rodzaju tablicy w PHP nie trzeba wcześniej określać, a index wpisuję się w nawiasie kwadratowym po nazwie tablicy.

Istnieje też możliwość tworzenia tablic asocjacyjnych, tzn. że zamiast indexów w tablicach będą pojawiać się nazwy np. tak:

$Pracownik["Imię"] = "Jakieś imię"; $Pracownik["Nazwisko"] = "Jakieś nazwisko";

No i to byłoby tyle na tą lekcję. Pora sobie trochę utrwalić zdobyta wiedzę. Dokładne sposoby wyświetlania wszystkich elementów tablicy po kolei znajdziesz w lekcji poświęconej pętlom.

 

 

 

Pętle

Pętlę dają nam możliwość wielokrotnego wykonania określonych lini kodu. Dzięki nim możemy np. wyświetlić wszystkie elementy tablicy, wyświetlić zawartość pliku linia po lini itd. W PHP momy do dyspozycji trzy rodzaje pętli: while, for, do...while. Oprócz tego mamy do dyspozycji kilka dodatkowych wbudowanych funkcji takich jak: exit, break.

Pętla while ma następującą postać:

while(wyrażenie)

{

  operacje;

}

Jeżeli wyrażenie ma wartość pozytywną (true) to funkcja wykona operacje zawarte we wnętrzu pętli i powróci na jej początek. I znowu jeżeli wyrażenie będzie miało wartość true zatem ... Najlepiej będzie Ci to zrozumieć na przykładzie:

<?

 

  $licznik = 0;

 

  while($licznik < 5)

  {

   $licznik++;

   print("To jest $licznik wykonanie pętli<BR>\n");

  }

 

?>

Funkcja będzie wykonywana do momentu kiedy zmienna $licznik przyjmie wartość równą - 5. Podobny efekt można by uzyskać wykorzystując tu pętlę for. Jej budowa jest następująca:

for(inicjalizacja; warunek; inkrementacja)

{

  operacje;

}

W pętli tej inicjalizacja czyli przypisanie do zmiennej o dowolnej nazwie wartości początkowej jest wykonywane tylko za pierwszym razem. Dalej jeżeli warunek zostaje spełniony wykonywana jest tzw. inkrementacja, czyli powiększenie wcześniej utworzonej zmiennej o jeden. Pętle for wykorzystuję się zazwyczaj wtedy kiedy chcemy, aby dany fragment kodu został wykonany określoną ilość razu, zaś pętlę while wtedy kiedy chcemy, aby kod był wykonywany do osiągnięcia jakiegoś określonego celu np. osiągnięcia końca pliku. Czas na przykład. Oto pętla for w działaniu:

<?

 

  $licznik = 0;

 

  nor($licznik = 1; $licznik <= 5; $licznik++)

  {

   print("To jest $licznik wykonanie pętli<BR>\n");

  }

 

?>

Pętla do..while różni się od pętli while tym, że pętla do...while zostanie wykonana przynajmniej raz ponieważ wartość instrukcji jest sprawdzana na końcu, zaś w pętli while na samym początku. Oto jej składnia

do

{

  operacje;

}

while(wyrażenie);

O funkcjach break oraz exit nie ma dużo do mówienia. Funkcja BREAK powoduję opuszczenie pętli w momencie napotkania na ten wyraz, zaś funkcja exit może być wykorzystywana nie tylko w połączeniu z pętlami powoduję przerwanie wykonywania skryptu PHP lub HTML.

No i to byłoby tyle teori. W poprzedniej części kursu obiecałem pokazać jak za pomocą pętli można odczytać wszystkie wartości tablicy. Oto on:

<?

  $Imiona[] = "Michał";

  $Imiona[] = "Jarek";

  $Imiona[] = "Marcin";

 

  $koniec = count($Imiona);

 

  for($index=0; $index < $koniec; $index++)

  {

    print("$Imiona[$index]<BR>");

  }

?>

 

 

 

 

 

 

 

 

 

 

 

 

 

Funkcje

Funkcje są elementem kodu dostępnym w każdym języku programowania. Dzięki nim mamy możliwość wykonania tego samego kodu nie powtarzając go. Każdą deklarację funkcji rozpoczyna się wyrazem function dalej podaję się nazwę funkcji oraz w nawiasie w razie potrzeby argumenty które mają zostać przetworzone. Poszczególne argumenty oddziela się od siebie przecinkiem. Oto szablon funkcji:

function nazwa(argumenty)

{

  instrukcję

}

Stwórzmy teraz naszą pierwszą funkcję. Będzie ona wypisywała tekst objęty znacznikami <PRE>. Oto kod do przeanalizowania:

<HTML>

<HEAD>

</HEAD>

<BODY>

 

<?

 

  function pre($tekst)

  {

    print("<PRE>$tekst</PRE>");

  }

 

  pre("To jest tekst przekazany do funkcji");

 

?>

 

</Body>

</HTML>

Zapomniałem jeszcze dodać, że każda funkcja przed wywołaniem musi zostać wcześniej utworzona tak jak w powyższym przykładzie.

Potrafisz już wykorzystywać funkcję, jednak wszystko nie jest tak proste jak się wydaję. Zmienne które wykorzystujesz wewnątrz funkcji nie będą widoczne poza nią. Jak temu zaradzić? Służy do tego instrukcja global która tworzy zmienną na całym obszarze kodu. Jeżeli jednak zamiast zmiennej chciałbyś wykorzystywać tablicę, wystarczy instrukcję global zamienić na GLOBALS.

 

 

 

 

 

 

 

Odbieranie danych z formularza

 

Odbieranie danych, wprowadzonych przez odwiedzającego do formularza, jest o wiele prostsze w PHP niż w podobnym języku, którym jest CGI. W PHP nie jest ważne którą metodę przesyłania danych z formularza wybierzemy. Czy będzie to "Get" czy "Post" musimy zdecydować sami. Widoczna różnica pomiędzy nimi jest taka, że gdy wybierzemy opcję: "Get" wszystkie dane zostaną po znaku "?" zapisane w adresie, zaś przy opcji "Post" PHP prześlę dane dyskretnie. Oto przykład najprostszego formularza, który będzie przesyłał imię do skryptu o nazwie: obsluga.php3.

 

<FORM ACTION="obsluga.php3" METHOD="POST">

...

Zgłoś jeśli naruszono regulamin