Informatyka dla klas III

Wprowadzenie do PHP

Co to jest PHP

Jest to język programowania stron WWW, podobnie jak JavaScript. Program w PHP ma postać skryptu, który umieszczamy na stronie WWW. Podstawowa różnica pomiędzy PHP a JavaScript (oprócz składni) jest taka, że skrypt PHP jest wykonywany przez serwer WWW zanim strona trafi na komputer użytkownika. Skrypty JavaScript były wykonywane przez przeglądarkę po odczytaniu strony z serwera (lub w trakcie odczytu). Co nam to daje? Wbrew pozorom bardzo dużo. Po pierwsze serwer przetwarza strony i użytkownik nie ma na to wpływu. W przypadku JavaScript można zablokować w przeglądarce wykonywanie skryptów. Druga rzecz to jednorodne środowisko uruchomieniowe. Skrypt PHP działa na serwerze i korzysta z jego zasobów, które dla użytkownika w inny sposób nie są dostępne, np. bazy danych. Dzięki temu zyskujemy na bezpieczeństwie.

Z tego powodu PHP często jest nazywany językiem działającym po stronie serwera (ang. server-sided language).

PHP pozwala również przetwarzać dane, które użytkownik przesyła na serwer za pomocą formularzy. W ten sposób da się oprogramować różne fora, listy dyskusyjne, blogi, sklepy internetowe, itp. Wszystko to powoduje, że PHP jest bardzo potężnym narzędziem i praktycznie każdy twórca stron WWW musi go znać w pewnym stopniu.

Co oznacza nazwa PHP? Tego tak naprawdę nikt nie wie. Niektórzy twierdzą, że pochodzi ona od Hypertext Pre-processor (czyli program wstępnie przetwarzający strony WWW przed ich wysłaniem przez serwer), jednakże wtedy nazwa brzmiałaby HPP. Podobno pierwsza wersja tego oprogramowania nosiła nazwę Personal Home Page Tools (narzędzia do własnych stron domowych). To przynajmniej daje nam PHP(T).

Jeśli chodzi o składnię PHP, to jest ona bardzo podobna do C++. To dobra wiadomość dla tych, którzy pracowali w klasie II. Podobieństwo nie oznacza identyczności. W PHP jest mnóstwo funkcji wspomagających programowanie stron WWW, których nie znajdziemy w C++. Na lekcjach informatyki poznamy zaledwie czubek góry lodowej o nazwie PHP. Na pełny kurs trzeba poświęcić setki godzin programowania. Niemniej podane tutaj informacje znacznie ułatwią ci start.

 

Środowisko programowania PHP

W przypadku C++ do tworzenia i uruchamiania programów wykorzystywaliśmy środowisko Code::Blocks. Skrypty JavaScript tworzyliśmy w dowolnym edytorze HTML (Bluefish) lub nawet w najzwyklejszym notatniku. Stronę ze skryptami JS można było uruchomić jako plik HTML w dowolnej przeglądarce z włączoną obsługą JavaScript. W przypadku PHP jest nieco trudniej. Musimy posiadać dostęp do serwera WWW z włączoną obsługą PHP (istnieje możliwość uruchamiania skryptów PHP jak innych programów na komputerze, lecz tym tutaj nie będziemy się zajmować). Uruchamianie strony w przeglądarce się nie powiedzie. Strona musi przejść przez serwer, który przekaże ją do PHP, a wynik z PHP prześle do twojej przeglądarki WWW. Dodatkowo strona WWW musi posiadać rozszerzenie nazwy php. Inaczej serwer WWW nie rozpozna jej jako strony ze skryptami PHP i zamiast wyniku działania programu otrzymasz jego tekst.

W naszej pracowni zainstalowano Wamp Server z obsługą PHP i MySQL. Pakiet instalacyjny dla Windows możesz pobrać z tego adresu:

 

http://sourceforge.net/projects/wampserver/

 

Serwer ten jest u nas automatycznie uruchamiany przy starcie systemu Windows. W zasobniku systemowym pojawia się ikona menadżera aplikacji (jeśli serwer działa poprawnie, to ikona jest zielona – inny kolor świadczy o jakimś problemie):

Serwer WAMP stanowi kompletne środowisko do nauki programowania w języku PHP. Zawiera on bardzo dobry serwer WWW Apache, moduły PHP oraz MySQL. Możesz również wykupić za nieduże pieniądze ogólnodostępny serwer w sieci Internet i ćwiczyć na nim programowanie w PHP i MySQL. Tej opcji tutaj nie opisujemy.
 

Testujemy środowisko uruchomieniowe PHP

Kliknij lewym przyciskiem myszki ikonę serwera WAMP w zasobniku systemowym. Pojawi się menu:

Wybierz w nim www directory. Opcja ta uruchamia menadżera plików w katalogu WWW serwera WAMP. Katalog ten zawiera pliki startowe, które serwer WAMP przesyła do łączących się z nim klientów WWW, czyli przeglądarek. Usuń wszystko z tego katalogu. Następnie kliknij prawym przyciskiem myszki w polu katalogu i z menu wybierz opcję Nowy → Plik tekstowy. Plikowi nadaj nazwę index.php. Rozszerzenie nazwy php informuje serwer WWW, że plik strony zawiera skrypt PHP i zostanie on przekazany do obróbki preprocesorowi PHP przed wysłaniem do użytkownika.

Kliknij prawym przyciskiem myszki utworzony w ten sposób plik index.php i wybierz z menu kontekstowego opcję Edit with Microsoft Expression Web 4. Jest to aplikacja do tworzenia stron WWW, którą firma Microsoft udostępniła darmowo w sieci Internet. Będziemy z niej korzystać w pracowni przy tworzeniu stron WWW oraz do programowania w PHP z MySQL.

Po wybraniu powyższej opcji zostanie uruchomiona aplikacj Expression Web 4 i ukaże się okno robocze programu:

W centralnej części widoczny jest edytor strony WWW. Standardowo aplikacja uruchamia się w trybie projektu (Design). Tryb ten służy do wizualnego tworzenia strony WWW. W naszym przypadku jest zbędny, dlatego należy na spodzie ekranu wybrać tryb Code, aby dostać się do kodu strony WWW. Tutaj wpiszemy następującą treść (zwróć uwagę na podpowiedzi w trakcie wprowadzania znaczników):

 

 

Aby zobaczyć działanie tego skryptu, musisz połączyć się z plikiem index.php przez serwer WWW. Uruchom przeglądarkę, np. Firefox i wpisz w pasku adresowym localhost (czyli twój lokalny komputer).

 

Kod PHP jest umieszczony na stronie WWW wewnątrz znacznika <?php ... ?>. Umieściliśmy tam instrukcję echo. Instrukcja ta umieszcza na stronie WWW napis w miejscu, gdzie znajduje się znacznik <?php...?>. Aby to zaobserwować zmień nieco kod strony:

 

Efekt jest następujący:

 

Jak widzisz, można ze sobą mieszać to, co jest na stronie w języku HTML, z tym, co wygeneruje skrypt PHP. Daje to programiście bardzo duże możliwości, jak zobaczysz dalej. Teraz przeglądnijmy tekst strony WWW, którą wyświetla przeglądarka Firefox. Kliknij stronę WWW prawym przyciskiem myszki i z menu kontekstowego wybierz opcję Pokaż źródło strony. Otrzymasz:

Zwróć uwagę, że w otrzymanym z serwera kodzie strony WWW nie ma żadnego znacznika <?php...?>. Zamiast niego znajdziesz jedynie wynik działania skryptu PHP. Dzięki temu przeglądarka użytkownika wcale nie musi umieć wykonywać kodu PHP (jak w przypadku wcześniej poznanego języka JavaScript). Dodatkowo ukryte zostają przed użytkownikiem szczegóły działania kodu PHP, co jest ważnym elementem bezpieczeństwa. Kod PHP działa na serwerze i ma dostęp do jego zasobów (np. haseł). Chyba nie chciałbyś, aby każdy mógł je poznać.

Skrypt PHP może wykonywać działania arytmetyczne. Poniższy kod oblicza pole i obwód prostokąta:

 

Program w PHP jest bardzo podobny do programu w C++. W ten sam sposób wprowadzamy do kodu komentarze. Zmienne nie muszą być definiowane w stylu C++. Definicją zmiennej w PHP jest nadanie jej nazwy. Nazwa zmiennej musi być poprzedzona znakiem dolara $. Jeśli instrukcja echo ma za argument tekst w cudzysłowach, to w tekście tym możemy umieszczać zmienne. Sprawdź, co się stanie, gdy zmienisz cudzysłowy na apostrofy np. w ostatnim poleceniu echo. Przeglądnij kod strony. Jeśli chcesz, aby w kodzie strony poszczególne teksty instrukcji echo znalazły się w osobnych wierszach, dodaj na ich końcach znak \n (newline = nowy wiersz). Sam wygląd strony się nie zmieni.

W PHP możemy wykorzystywać instrukcje pętli while, do...while i for podobnie jak w C++:

 

 

Skrypt wyświetla w kolejnych wierszach: liczby naturalne, kwadraty liczb naturalnych, liczby parzyste:

 

Ćwiczenia

  1. Napisz skrypt PHP wyświetlający pierwsze 20 liczb Fibbonaciego. Każda liczba ma być wyświetlona w osobnym wierszu:
    fib0 = 0
    fib1 = 1
    fib2 = 1
    fib3 = 2
    fib4 = 3
    ...
  2. Napisz skrypt PHP wyświetlający pierwsze 20 liczb pierwszych. Każda liczba ma być wyświetlona w osobnym wierszu:
    p1 = 2
    p2 = 3
    p3 = 5
    p4 = 7
    ...
  3. Napisz skrypt PHP, który wylicza silnię kolejnych liczb od 1 do 20. Wyniki należy wyświetlić w osobnych wierszach:
    1! = 1
    2! = 2
    3! = 6
    4! = 24
    ...


List do administratora Serwisu Edukacyjnego Nauczycieli I LO

Twój email: (jeśli chcesz otrzymać odpowiedź)
Temat:
Uwaga: ← tutaj wpisz wyraz  ilo , inaczej list zostanie zignorowany

Poniżej wpisz swoje uwagi lub pytania dotyczące tego rozdziału (max. 2048 znaków).

Liczba znaków do wykorzystania: 2048

 

W związku z dużą liczbą listów do naszego serwisu edukacyjnego nie będziemy udzielać odpowiedzi na prośby rozwiązywania zadań, pisania programów zaliczeniowych, przesyłania materiałów czy też tłumaczenia zagadnień szeroko opisywanych w podręcznikach.



   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2017 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.