Serwer WWW Apache http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Katalog który ma być serwowany Moduły, które mają zostać uruchomione na serwerze m.in. PHP, mod_rewrite Wirtualne hosty Obsługiwane typy plików Aktualne wersje 2.4.6, 2.2.25, 2.0.65 zakończony projekt
PHP http://php.net Plik konfiguracyjny php.ini Definiujemy m.in.: Rozszerzenia i biblioteki z którymi ma pracować php np.: graficzna gd2 Parametry takie jak max czas wykonania skryptu, katalog z rozszerzeniami/bibliotekami, maksymalny rozmiar uploadu pliku, sposób raportowania o błędach Aktualnie 5.5.5, 5.4.21 poprzednia generacja
mysql http://dev.mysql.com Plik konfiguracyjny my.ini Definiujemy m.in.: Numer portu na którym ma nasłuchiwać serwer Maksymalną liczbę połączeń Domyślne kodowanie znaków Aktualnia wersja 5.6.14 Comunity Server MySQL Workbench 6.0.7 MySQL Connectors (ODBC, JDBC)
phpmyadmin http://phpmyadmin.net Klient / administrator bazy danych mysql napisany w języku PHP Aktualnia wersja 4.0.8
Zmienne w PHP Zmienna jest to to obszar pamięci przechowujący określone dane. Zmienna może być np. ilość użytkowników na stronie czy też łańcuch tekstowy "Hello world"; Nazwa zmiennej w PHP zaczyna się od znaku dolara $ pierwszy znak może być znakiem podkreślnika _ lub dowolną literą pozostałe znaki mogą być cyframi, literami lub znakiem podkrleśnika rozróżnialne są małe i duże litery. Nie potrzebujemy deklarować typu zmiennych, jak to bywa w innych językach, PHP robi to za nas. Następuje także automatyczna konwersja zmiennych w razie potrzeby.
Zmienne w PHP $liczba_tekst = "4"; /* inicjujemy zmienna liczba_tekst, php traktuje ją jako string */ $liczba = 6; /* inicjacja zmiennej liczba, php traktuje ja jako typ całkowity */ $suma = $liczba_tekst + $liczba; /* nastepuje automatyczna konwersja zmiennej liczba_tekst na typ liczbowy dzieki czemu możliwe staje się dodawanie */
Zmienne w PHP podstawowe typy Całkowity (int) $a = 10 $a = 012 $a = 0xA Zmiennoprzecinkowy (float) $a = 0.01 $a = 1e6 (inaczej 1000000) Boolowski (bool) $a = true $a = false Łańcuch znaków (string) $a = 'tekst pierwszy'; $b = 'tekst drugi'; $c = $a.$b
Zmienne w PHP konwersja typów (rzutowanie) <?php $a = 0.5; echo (int) $a;?>
Zmienne w PHP przepisanie wartości <?php $a = 5; $b = $a; // inicjujemy zmienna $b wartoscia zmiennej $a $b = 6; // zmianie podlega jedynie wartosc zmiennej $b echo '$a ='.$a.' $b ='.$b;?> Zwykłe przypisanie wartości ze zmiennej $a do zmiennej $b
Zmienne w PHP referencja W PHP mamy jednak możliwość przypisania jednej zmiennej adresu w pamięci innej zmiennej. W wyniku czego zmiana wartości jednej ze zmiennych pociąga za sobą zmianę w drugiej zmiennej. Nazywamy to referencją. Tworzymy ją za pomocą znaku & <?php $a = 5; $b = &$a; // zmiennej $b przypisujemy adres zmiennej $a $b = 6; // wartosc zmiennej $a tez ulega zmianie echo $a.' '.$b; // obie zmienne maja wartość 6?>
Tablice w PHP Tablica zawiera elementy, każdy element zawiera klucz oraz wartość. Kluczami oraz wartościami mogą być zarówno liczby całkowite jak i stringi. <?php $tab = array( poniedziałek, wtorek, środa ); $tablica[]= poniedziałek ; $tablica[]= środa ; $tablica[1]= wtorek ;?>
Tablice w PHP W przykładzie najpierw stworzyliśmy nową tablicę za pomocą funkcji array(), przyjmuję ona jako argumenty wartości poszczególnych elementów. Domyślnie numeruje klucze od zera wzwyż. Następnie stworzyliśmy nową tablicę za pomocą operatora[], jeśli tablica jest pusta inicjuje ją domyślnie kluczem 0 i wartością wpisaną po znaku równości. Jeśli tablica nie jest pusta operator[] na końcu tablicy tworzy nowy element o kluczu wyższym od poprzedniego. Dotyczy to także tablicy stworzonej za pomocą funkcji array(). Za pomocą nazwa_tablicy[numer_indeksu] możemy odwołać się do danego indeksu zmienić jego wartość bądź wypisać go za pomocą echo.
Tablice w PHP tablice asocjacyjne Kluczami zmiennych nie muszą być liczby całkowite, możemy wpisać własne klucze. Chcąc nadawać własne nazwy kluczy w array() mamy konstrukcje: nazwa_klucza => wartość. W przypadku operatora[] mamy konstrukcje: $nazwa_tablicy[nazwa_klucza]=wartość; W przypadku użycia domyślnego klucza, przyjmie on wartość o jeden wyższą od najwyższego użytego klucza liczbowego lub 0 jeśli takiego nie było.
Tablice w PHP tablice asocjacyjne <?php $asocjacyjna = array("jabłka " => "zielone", "pomarancze" => "pomaranczowe"); $asocjacyjna["dynia"] = "rozowa"; $asocjacyjna[] = 'bezbarwne'; //nowy element o domyślnym kluczu, przyjmie wartosc 0 $asocjacyjna['dynia'] = 'czerwona'; $tablica2 = array(3 => 3, 4);?>
Tablice w PHP tablice wielowymiarowe Wartościami danych elementów oprócz danych liczbowych czy stringów mogą być też inne tablice. <?php $Polska = array('stolica' => 'Warszawa', 'barwy' =>'bialo-czerwone'); $Monaco = array('stolica' => 'Monaco', 'barwy' => 'czerwono-biale'); $panstwa = array(); $panstwa['polska'] = $Polska; $panstwa['monaco'] = $Monaco;?>
Tablice w PHP tablice superglobalne PHP posiada zestaw tablic zwanych superglobalnymi które są dostępne w każdej części skryptu, przechowują zmienne przekazywane do skryptu. Nazwa $GLOBALS $_SERVER $_COOKIE $_SESSION Opis Tablica ta zawieta wszystkie zmienne globalne znajdujące sie w skrypcie. Zawiera również wszystkie tablice superglobalne Tablica zawierająca zmienne utworzone przez serwer. Zawiera m.in nazwę przeglądarki, nazwę skryptu. Tablica zawierająca zmienne dostarczone do skryptu poprzez ciasteczka. Tablica zawierająca zmienne sesji.
Tablice w PHP tablice superglobalne PHP posiada zestaw tablic zwanych superglobalnymi które są dostępne w każdej części skryptu, przechowują zmienne przekazywane do skryptu. Nazwa $_GET $_POST $_REQUEST $_FILES Opis Tablica ta zawiera informacje przesłane do skryptu za pomocą metody GET. Tablica ta zawiera informacje przesłane do skryptu za pomocą metody POST. Tablica ta zawiera zmienne przesłane za pomocą POST, GET i COOKIES. Tablica ta zawiera zmienne przesłane do skryptu podczas przesyłania plików na serwer.
Tablice w PHP użyteczne funkcje count($tab); //zwraca liczbę elementów w tablicy explode($separator, $string); //zamienia zmienną typu string w postać tablicy według wskazanego separatora implode($separator, $tablica); //zamienia tablicę w zmienną typu string elementy będą oddzielone separatorem arsort($tablica); // sortuje tablicę wg wartości w kierunku malejącym asort($tablica); // sortuje tablicę wg wartości w kierunku rosnącym ksort($tablica); //sortuje tablicą wg kluczy w kierunku rosnącym krsort($tablica); //sortuje tablicę wg kluczy w kierunku malejącym
Instrukcja warunkowa IF if( warunek ) {... } elseif ( warunek2 ) {... } else{... }
Operatory porównań Operator Nazwa Składnia Opis == Równa się $a == $b TRUE jeśli $a równa się co do wartości $b === Identyczność $a===$b TRUE jeśli $a jest równe $b i są one tego samego typu!= lub <> Nie równa się $a!= $b TRUE jeśli $a nie równa się $b!== Nieidentyczność $a!== $b TRUE jeśli $a nie jest równe $b lub nie są one tego samego typu < mniejsze niż $a <$b True gdy $a mniejsze niż $b
Operatory logiczne Operator Nazwa Składnia Opis AND lub && koniunkcja (5<20)&&($a) lub OR alternatywa 5 $b XOR exlusive or $a XOR $b! negacja!$a TRUE jeżeli wyrażenia po lewej i po prawej stronie są prawdzie TRUE jeżeli przynajmniej jedno z wyrażeń jest prawdziwe, w tym przypadku większe od zera TRUE jeżeli dokładnie jedno z wyrażeń jest prawdzie, w tym wypadku, jedna ze zmiennych musi być różna od zera. odwraca wartość logiczą zdania, TRUE gdy wyrażenie jest fałszem, w tym wypadku gdy $a jest zerem
Instrukcja warunkowa switch switch($a) { case 'add': echo 'Dodawanie danych'; break; case 'delete': echo 'Usuwanie danych'; break; default: echo 'Wyświetlenie danych'; }
Pętle w PHP for for(wyrazeniepoczatkowe; warunekwykonania; instrukcjaiteracji) { //blok instrukcji } while while( warunek ){ //blok wykonywany gdy warunek jest spełniony }
Pętle w PHP do.. while do { //blok instrukcji } while(); // warunek wykonalności foreach foreach( $przegladanyobiekt as tymczasowyklucz => tymczasowawartosc ){ } // ciało pętli
Zadania: ćwiczenie 1 Zasymulować pętlą while oraz pętlą do while - pętlę for wykonującą się 11 razy. ćwiczenie 2 Przy pomocy pętli for wygenerować tabelkę 10 wierszy 10 kolumn a w niej tabliczkę mnożenia (10x10). ćwiczenie 3 Przy pomocy pętli for wygenerować tabelkę 10 wierszy 10 kolumn a w niej tabliczkę mnożenia (10x10). Komórki tabeli co drugi wiersz i co drugą kolumnę niech mają szary kolor.
Zadania: ćwiczenie 4 Za pomocą pętli for wykonać tabelkę składającą się z 10 wierszy i 5 kolumn, nazwy kolumn w pierwszym wierszu mają być nazwami pochodzącymi z następującej tablicy asocjacyjnej. $tab = array(1=>"lp",2=>"imie i nazwisko",3=>"i",4=>"j",5=>"wynik i*j"); Pozostałe wiersze mają mieć wartości odpowiadające nazwom kolumn z pierwszego wiersza. np.: 1 Jan Kowalski 1 4 4