Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wstęp do baz danych - język programowania PHP Dr Andrzej Bąk.

Podobne prezentacje


Prezentacja na temat: "Wstęp do baz danych - język programowania PHP Dr Andrzej Bąk."— Zapis prezentacji:

1

2 Wstęp do baz danych - język programowania PHP Dr Andrzej Bąk

3 Cechy PHP Składnia spokrewniona z innymi językami jak C, Pascal Nie trzeba dołączać żadnych bibliotek ani dyrektyw kompilatora. PHP zawiera zestaw zabezpieczeń dla programistów i administratorów, działający na poziomie systemu oraz aplikacji.

4 Cechy PHP - 2 Jest językiem zagnieżdżanym, niezwykle elastycznie spełnia wymagania programisty. Można go integrować z JavaScript, HTML, XML i innymi. Skrypty PHP są kompilowane w całości po stronie serwera a potem wysyłane do użytkownika, dlatego nie ma problemów ze zgodnością przeglądarek PHP - kody źródłowe środowiska i wersje instalacyjne dla Windows są całkowicie darmowe. Również serwer WWW Apache.

5 Skąd pobrać PHP? PHP installer około 11 MB komplet Można też pobrać sobie dokumentację

6 Serwer Apache Do pobrania z następujących miejsc: ver

7 MySQL PHP bardzo dobrze współpracuje z serwerem baz danych MySQL Pakiet MySQL można pobrać z witryny pod adresem

8 Aby odróżnić kod PHP od innych elementów na stronie WWW Musimy oznaczyć kod PHP stosując: Znaczniki domyślne Znaczniki skrócone Znaczniki skryptowe: print ty; Znaczniki ASP (Active Server Pages) lub

9 Zagnieżdżanie PHP pozwala na zagnieżdżanie wielu skryptów w różnych miejscach strony internetowej, jak i na zagnieżdżanie kodu HTML wewnątrz instrukcji print (echo).

10 Prosty przykład zastosowania PHP Do paska tytułu i nie tylko można dodać aktualną datę: spowoduje wyświetlenie daty w pasku tytułu.

11 Komentarze Jednowierszowy, podobnie jak w C i JavaScript // lub # Wielowierszowy: /* przykład komentarza wielowierszowego */

12 Zmienne w php Nie musimy deklarować typu zmiennej

13 Typy danych Liczby całkowite Liczby rzeczywiste (zmiennopozycyjne) Ciągi znakowe, w tym pojedyncze znaki - nie ma typu char Tablice i wektory Obiekty True, false (boolean)

14 Liczby

15 Zmiana typu

16 Rzutowanie typów Rzutowanie typów odbywa się przez podanie nowego typu w nawiasie przed zmienną lub wartością, której typ chcemy zmienić. Dozwolone typy rzutowań (int), (integer) - rzutuj do typu całkowitego (real), (double), (float) - rzutuj do typu rzeczywistego (string) - rzutuj do ciągu (array) - rzutuj do tablicy (object) - rzutuj do obiektu

17 Rzutowanie typów Drugim sposobem, trwałym, jest użycie funkcji settype. Funkcja ta pobiera 2 argumenty. Pierwszym jest nazwa zmiennej do ustalenia typu, a drugim ciąg określający nowy typ zmiennej.

18 Operatory Operatory są to najprościej mówiąc symbole, które służą do operacji na zmiennych. Operatory dzielą się na operatory arytmetyczne, które służą do operacji na liczbach, operatory przypisania służące do przypisywania zmiennym wartości, operatory operacji bitowych, operatory porównania niezbędne do instrukcji warunkowych, operator kontroli błędów, operator wykonania służący do uruchamiania zewnętrznych programów, operatory inkrementacji i dekrementacji, operatory logiczne i operatory ciągu.

19 Operator ciągu Operator ciągu (. - kropka) służy do łączenia kilku ciągów w jedną całość.

20 Operatory arytmetyczne $a + $b; Dodawanie Suma $a i $b. $a - $b; Odejmowanie Różnica $a i $b. $a * $b; Mnożenie Iloczyn $a i $b. $a / $b; Dzielenie Iloraz $a i $b (bez reszty). $a % $b; Modulo Reszta z dzielenia $a przez $b.

21 Operator przypisania Podstawowym operatorem przypisania jest symbol =. Oczywiście nie oznacza on jest równe. Wyrażenie $b = 5 oznacza, że zmienna $b przyjmuje wartość równą 5. Zmiennej można przypisać także wartość innej zmiennej: $b = 5; $a = $b; - zmienna $a przyjmie wartość 5.

22 Operatory porównania PrzykładNazwaWynik $a == $bRównyPrawda jeśli $a jest równe $b. $a === $bIdentycznyPrawda jeśli $a jest równe $b i są tego samego typu. (tylko PHP4) $a != $bNie równePrawda jeśli $a nie jest równe $b. $a !== $bNie identyczny Prawda jeśli $a nie jest równe $b lub nie są tego samego typu. (tylko PHP4) $a < $bMniejszePrawda jeśli $a jest mniejsze niż $b. $a > $bWiększePrawda jeśli $a jest większe niż $b. $a <= $b Mniejsze lub równePrawda jeśli $a jest mniejsze lub równe $b. $a >= $b Większe lub równePrawda jeśli $a jest większe lub równe $b.

23 Operator wywołania Operator ten służy do uruchamiania zewnętrznych programów lub poleceń powłoki. Wystarczy wpisać polecenie pomiędzy znaki odwróconego apostrofu (`') aby zostało ono wykonane. Przykład: wyświetlenie zawartości katalogu /home na serwerze

24 Operatory inkrementacji i dekrementacji Operatory te występują w większości języków programowania. Służą one do zmniejszenia lub zwiększenia wartości danej zmiennej o 1. Każdy operator można stosować na 2 sposoby: preinkrementacja/predekrementacja - najpierw wartość zmiennej zostanie zmieniona, a później zwrócona, lub postinkrementacji/postdekrementacji - najpierw zostanie zwrócona wartość zmiennej, a następnie wartość zmiennej zostanie zmieniona.

25 Operatory inkrementacji i dekrementacji PrzykładNazwaWynik ++$aPreinkrementacjaZwiększa $a o jeden, a następnie zwraca $a. $a++PostinkrementacjaZwraca $a, a następnie zwiększa $a o jeden. –$aPredekrementacjaZmniejsza $a o jeden, po czym zwraca $a. $a–PostdekrementacjaZwraca $a, po czym zmniejsza $a o jeden.

26 Operatory inkrementacji i dekrementacji

27 Operatory logiczne Operatory logiczne służą do budowania bardziej skomplikowanych instrukcji warunkowych - do łączenia kilku warunków w jednej instrukcji. PrzykładNazwaWynik $a && $bANDPrawda, jeśli $a i $b są prawdą $a || $bORPrawda, jeśli $a lub $b są prawdą ! $aNOTPrawda, jeśli $a nie jest prawdą

28 Instrukcje warunkowe Instrukcje warunkowe są podstawą każdego języka programowania. Używa się jej do wykonania pewnej instrukcji (lub bloku instrukcji), ale tylko w pewnych okolicznościach – wtedy gdy zostanie spełniony określony warunek (lub cały zestaw warunków).

29 Instrukcje warunkowe $b) echo "$a jest większe od $ b"; elseif ($b > $c) echo "$b jest większe od $ c"; else echo "$c jest większe od $ a i $b"; ?> Jeśli chcemy, aby po sprawdzeniu warunku wykonane zostało nie jedno, ale kilka poleceń, to te polecenia trzeba ująć w nawiasy klamrowe. Bez tego warunkiem objęta by była tylko jedna instrukcja po instrukcji if. Instrukcje mogą być zagnieżdżane wewnątrz siebie.

30 Instrukcje warunkowe - przykład $b) { echo "$a jest większe od $b"; if($a > $c) echo " i od $c"; // Powinien zostać wyświetlony napis "6 jest większe od 5 i od 1" } ?>

31 Pętla FOR Czasem zachodzi potrzeba wykonania jakiejś czynności określoną ilość razy. Z pomocą przychodzi jedna z najczęściej używanych składni w większości języków programowania, czyli pętla FOR. Ogólny zapis wygląda tak: Przykład

32 Pętla while Innym rodzajem pętli jest pętla WHILE. Jest ona wykorzystywana w sytuacjach, kiedy niezbędne jest wykonywanie jakiejś operacji dopóki nie zostanie spełniony warunek.

33 Pętla while - przykład

34 Pętla do…while Od zwykłej pętli while różni się ona tym, że polecenia zawarte w pętli będą przynajmniej raz wykonane - w przypadku pętli while tak być nie musi, to znaczy jeśli za pierwszym razem warunek nie zostanie spełniony to polecenia z pętli nigdy nie zostaną wykonane. W przypadku tej pętli zostano one wykonane przynajmniej ten pierwszy raz.

35 Przerywanie wykonań pętli Czasem zachodzi potrzeba przerwania danej iteracji (powtórzenia) pętli i przejścia do następnej iteracji. Z pomocą wtedy przychodzi instrukcja continue. Wystarczy wstawić ją w odpowiednie miejsce wewnątrz pętli. Wykonanie poniższego kodu spowoduje wyświetlenie liczb nieparzystych

36 Składnia switch Składnia switch jest instrukcją warunkową, ale jedną zmienną można porównać nie z jedną wartością, ale z kilkoma. Niestety nie można konstruować złożonych warunków - możliwe jest tylko proste porównywanie (równoważne instrukcji: if($zmienna==wartość) instrukcja).

37 Tablice Są bardzo specyficznym typem zmiennych - są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych. Do zmiennych tych uzyskuje się dostęp przez liczbę w nawiasie kwadratowym podane bezpośrednio po nazwie zmiennej - tablicy. Liczba ta to tak zwany indeks - numer kolejny zmiennej w tablicy. Tak samo przypisuje się wartość do tablicy.

38 Tablice

39 Tablice Aby dodać kolejny wpis na końcu tabeli wystarczy przy przypisywaniu wartości nie wpisywać indeksu do nawiasów kwadratowych. Jeśli w ten sposób dodawane są wpisy do nowej tablicy, to pierwszy wpis ma indeks 0. Indeks można też podawać ze zmiennej, z innej tablicy czy funkcji - z dowolnego wyrażenia zwracającego wartość.

40 Tablice

41 Tablica asocjacyjna W PHP występuje też inny rodzaj tablic, tak zwane tablice asocjacyjne (zwane też czasem haszami - hash table). Są to tablice, w których zamiast indeksów liczbowych używa się identyfikatorów znakowych (kluczy):

42 Tablice w PHP //przypisanie elementów tworząc tablice asocjacyjne $jezyki[hiszpania]=hiszpański $jezyki[turcja]=turecki //lub za pomocą funkcji array() $jezyki=array(hiszpania=>hiszpański, usa=>angielski, niemcy=>niemiecki);

43 Przeglądanie tablic Bardzo często zachodzi potrzeba wykonania jakiejś operacji na wszystkich elementach tablicy. Sprawa jest prosta jeśli tablica jest zwykłą tablicą z indeksami liczbowymi i znamy ilość tych elementów:

44 Przeglądanie tablic Sprawa się trochę komplikuje jeśli nie znamy ilości elementów tablicy. Wtedy możemy użyć funkcji: count( $nazwa_tablicy ). Zwraca ona ilość elementów w tablicy podanej jako parametr.

45 Przeglądanie tablic

46 Przeglądanie tablic asocjacyjnych W tym przypadku należy skorzystać z funkcji list() i each(). $wartosc "; ?>

48 Metody przekazywania parametrów do innych stron metoda GET metoda POST. Metody GET używa się kiedy parametrów jest niewiele. Dzieje się tak ponieważ parametry przekazuje się za pomocą adresu URL (np. 2=wartość2), Ograniczona długość. Parametry są widoczne w pasku adresu przeglądarki, więc tej metody nie należy używać jeśli przekazywane są np. hasła. Adres od parametrów oddzielany jest za pomocą znaku zapytania, a kolejne pary parametr=wartość za pomocą znaku ampersand (&).

49 Metoda POST Do przekazywania parametrów wykorzystuje nagłówek zapytania Wystarczy wiedzieć, że metoda ta umożliwia przekazywanie dużo więcej parametrów, a także że parametrów nie widać w pasku przeglądarki.

50 Zapisywanie zmiennych Zależnie od metody, zmienne trafiają do odpowiednich tablic asocjacyjnych. Dane przesłane metodą GET trafiają do tablicy $_GET (lub $HTTP_GET_VARS w wersjach starszych niż 4.1.0) Dane z metody POST to tablicy $_POST (lub $HTTP_POST_VARS). Tablice $_GET i $_POST są superglobalne. Oznacza to, że są widoczne w każdym miejscu kodu PHP bez konieczności użycia składni globals.

51 Odczytywanie wartości z formularza Test formularza Imię: Nazwisko: Proszę o fakturę do zamówienia: Chcę zamówić: Coca-colę Fantę Sprite'a

52 Odczytywanie wartości z formularza Wyniki Imię: Nazwisko: Faktura: Zamówienie:

53 Funkcje Dużo predefiniowanych funkcji PHP można znaleźć na stronie internetowej echo print Funkcje, które nie zwracają wyniku nazywa się procedurami, podobnie jak w Turbo Pascalu.

54 Funkcja Jest kawałkiem kodu, który można wywołać podając jej nazwę. Już wcześniej podane zostało kilka funkcji dostarczanych przez PHP, takich jak array(), each(), list(), Funkcje rozpoznaje się po nawiasach występujących po ich nazwie. W nawiasach tych (jeśli funkcja tego wymaga) podaje się parametry dla danej funkcji. Niektóre funkcje zwracają jakąś wartość, a więc wywołanie takiej funkcji można wstawić jak dowolne inne wyrażenie do listy parametrów innej funkcji czy np. do obliczenia.

55 Definicja Funkcji

56 Funkcje – c.d. Definiowana funkcja o nazwie suma służy do obliczania sumy dwóch wyrażeń podawanych jako parametry (kolejne parametry oddziela się przecinkiem). W przypadku pominięcia któregoś z parametrów przypisana mu będzie wartość 0 - dzieje się tak dzięki zaznaczeniu = 0 po określeniu nazwy parametru w definicji funkcji (nie jest to konieczne). Z parametrów funkcji można korzystać jak z dowolnej innej zmiennej, ale oczywiście tylko wewnątrz tej funkcji. Wewnątrz funkcji dostępne są tylko zmienne w niej definiowane i parametry. Do określania co jest zwracane przez funkcję służy instrukcja return. Może ona być wywołana w dowolnym miejscu funkcji - po dojściu do tej instrukcji kończy się wykonanie funkcji.

57 Funkcje – c.d. Funkcja może nie zwracać żadnych wartości. Taka funkcja przydaje się jeśli często powtarzany jest jakiś fragment kodu. Taka funkcja kończy swoje wykonanie po dojściu do końca jej definicji lub instrukcji return (tym razem wywoływanej bez parametru, ponieważ funkcja nie zwraca żadnych wartości).

58 Funkcje – c.d. Funkcje w PHP nie mogą być ponownie definiowane. Mogą być definiowane w zasadzie w dowolnym miejscu kodu. Wewnątrz funkcji znajdować się może dowolny, prawidłowy pod względem składniowym kod - nawet definicje innych funkcji.

59 Zasięg zmiennych

60 Zmienne w funkcjach Kiedy zmienna jest zadeklarowana poza funkcją, jej wartość nie będzie widoczna w funkcji. Ilustruje to przykład: $c=5; Function f() { echo($c); } f();

61 Zmienne globalne Żeby zmienna globalna (w tym wypadku $c ) była widoczna wewnątrz funkcji, należy użyć polecenia global: $c=5; Function f() { global $c; echo($c); } f();

62 Przekazywanie parametrów do i z funkcji //dodać 5 do zmiennej przekazanej function dodaj5 ($przekazana) { $przekazana+=5; return $przekazana; } //do zmiennej przekazanej w wywołaniu zostanie dodane 5 i zwrócone jako rezultat działania funkcji

63 Zmienna wewnątrz funkcji Jeżeli stworzy się zmienną wewnątrz funkcji, to jej wartość będzie za każdym wywołaniem ustawiana od początku: Function f() { $b=2; echo($b); $b++; } f(); Wykonanie tego kodu spowoduje pojawienie się dwa razy tego samego.

64 Po zakończeniu funkcji zmienna static nie traci wartości Jeżeli chce się, żeby zmienna nie traciła wartości po zakończeniu funkcji, to należy użyć polecenia static: Function f() { static $d=2; echo($d); $d++; } f(); Teraz pojawi się najpierw liczba 2, potem 3.

65 Definiowanie stałych

66 Zwracanie wartości funkcji

67 Funkcja może zwracać wiele wartości w postaci tablicy $wino=bordeaux function najlepsze_roczniki($wino) { $california=array(1989,1992,1994); $bordeaux=array(1992,1997,1998); return $$wino //zwraca zmienną zmiennej $$ } //do wyświetlania listy użyto list() list($pierw,$drugi,$trzeci)=najlepsze_roczniki( $wino); echo najlepsze roczniki wina $wino to: $pierw,$drugi,$trzeci;

68 Funkcje rekurencyjne Jest to wielokrotne wywołanie funkcji przez samą siebie w przypadku spełnienia warunku. Szczególnie przydatne w przypadku np. renderowania grafiki lub pracy z fraktalami.

69 Funkcje rekurencyjne //iloczyn liczb całkowitych - funkcja wywołuje samą siebie function iloczyn($zmienna) { if($zmienna!=0) {return $zmienna*iloczyn($zmienna-1);} } //wywołanie $zmienna2=iloczyn(4)

70 Funkcje zmienne Funkcja zmienna to inaczej dynamiczne wywołanie funkcji w zależności od wartości zmiennej. PHP obsługuje koncepcję zmiennych funkcji. Oznacza to, że jeśli po nazwie zmiennej występują nawiasy, PHP będzie szukało funkcji o nazwie będącej wartością zmiennej i będzie próbowało wywołać ją.

71 Funkcje zmienne - przykład //komunikat po polsku function polski() {echo Witaj przyjacielu na mojej stronie;} function angielski() {echo Welcome my friend to my Web page; } //wybieramy język $jezyk=polski; //wywołujemy funkcję $jezyk();

72 Funkcje używane w czasie operacji z tablicami list() - do pobierania wartości z tablicy wielu zmiennych. Działa podobnie jak array() range() - pozwala na wypełnienie tablicy wartościami o podanym zakresie np. $tablica1=range(2,6); //odpowiada $tablica1=array(2,3,4,5,6); $szachownica[0][1]=pionek

73 Funkcje używane w czasie operacji z tablicami 2 in_array() - umożliwia sprawdzenie, czy w tablicy istnieje dany element. np.: $jezyki = array (angielski,polski,niemiecki); $czy_jest=in_array(polski,$jezyki); //zwróci $true(prawda) //przykład użycia z instrukcją warunkową if if(in_array(polski,$jezyki)) {zrob_cos_1_procedura(); zrob_cos_2_procedura(); }; //jeśli true to np. przekieruje do strony po polsku

74 Funkcje używane w czasie operacji z tablicami 3 Tablice w PHP mogą być poszerzane, lub zmniejszane dynamicznie. Podobnie jak w kolejce w PHP można pobierać pierwszy element lub dodawać na początek kolejki Podobnie jak na stosie można dodawać elementy tablicy lub je zdejmować. Jest to tak, jak z zabawką w nakładanie drewnianych krążków na patyk od największego do najmniejszego. Aby je zdjąć trzeba zacząć od ostatnio nałożonego.

75 Funkcje używane w czasie operacji z tablicami 4 array_push() - służy do dodawania na końcu tablicy elementu array_pop() – służy do zdejmowania z tablicy jednego elementu, który podstawiany jest za dowolną zmienną.

76 Funkcje używane w czasie operacji z tablicami 5 Funkcja array_shift() Jest ona podobna do array_pop(), tylko że usuwa elementy z początku tablicy i zwraca jako zmienną array_unshift() dodaje element do początku tablicy (jako pierwszy wyraz)

77 Funkcje używane w czasie operacji z tablicami 6 array_pad(nazwa_tablicy, nowy_rozmiar, wartosc_jakom_wypelnimy_tablice) nowy_rozmiar określa nam nowy rozmiar tablicy po przedłużeniu. Jeżeli tablica miała 4 elementy, a teraz za tą wartość wstawimy 10, to nowa tablica będzie miała 10 elementów, a wartości elementów dodatkowych będą te same, takie jak trzeci parametr. Jeżeli drugi parametr będzie ujemny, to nowe wartości zostaną dodane do początku tablicy.

78 Funkcje używane w czasie operacji z tablicami 7 - przykład

79 Funkcje używane w czasie operacji z tablicami 8 Do przechodzenia między elementami tablicy służą: funkcja reset() przenosi wskaźnik do pierwszego elementu i zwraca element $zmienna=reset($tablica); może też być wywołana bez podstawienia reset($tablica);

80 Funkcje używane w czasie operacji z tablicami 9 Funkcja end($tablica) przenosi wskaźnik do ostatniego elementu tablicy. Funkcja next($tablica) przesuwa wskaźnik o 1 (zwieksza wskaźnik o 1). Jeżeli będziemy na końcu tablicy zwróci wartość logiczną false funkcja prev($tablica) przesuwa wskaźnik o jedną pozycję w lewo i zwróci wartość false, kiedy będziemy na początku tablicy

81 Funkcje używane w czasie operacji z tablicami 10 Funkcja array_walk($tablica,funkcja) powoduje wykonanie operacji na tablicy $tablica zdefiniowanych w funkcji

82 Funkcje używane w czasie operacji z tablicami 11 Funkcja array_reverse($tablica) - odwraca dokładnie na odwrót kolejność elementów tablicy. Funkcja array_flip($tablica) zamienia klucze na elementy tablicy, a elementy na klucze. To znaczy, jeżeli tablica była indeksowana liczbami , a miała wartości typu string np. masło, chleb... To te liczby indeksów będą elementami tablicy, a indeksami będą wartości typu string i przez ich podanie będziemy odwoływać się do poszczególnych elementów tablicy.

83 Funkcje używane w czasie operacji z tablicami 12 sizeof($tablica) - funkcja zwraca wielkość tablicy count($tablica) - również zwraca liczbę elementów tablicy.

84 Funkcje używane w czasie operacji z tablicami 13 Do sortowania tablic używamy kilku funkcji sort($tablica) sortuje wszystkie elementy od najniższego do najwyższego. Wartości typu string od A do Z. Funkcja rsort($tablica) sortuje wszystkie elementy na odwrót do sort()

85 Funkcje używane w czasie operacji z tablicami 14 Jeżeli tablica indeksowana jest kluczami w postaci string, a nie liczbami, to sortowanie odbywa się według kluczy tablicy od A do Z tzn ksort($tablica) spowoduje wysunięcie naprzód elementu $tablica[AAAA] przed element $tablica[BBBB]

86 Funkcje używane w czasie operacji z tablicami 15 Funkcja krsort($tablica) sortuje tablicę według indeksów-klucza, ale w odwrotnej kolejności. Funkcja usort($tablica,funkcja) sortuje tablicę według własnych kryteriów zadanych przez funkcję, w której określono mechanizm sortowania.

87 Funkcje używane w czasie operacji z tablicami 16 Funkcja array_merge($tablica1,$tablica2,....,$tablicaN) łączy ze sobą tablice od 1 do N) Funkcja array_slice($tablica,ktory,dlugosc) wycina z tablicy fragment odpowiadający liczbie elementów, określonej parametrem dlugosc od elementu ktory. Jeżeli ktory jest dodatni to liczymy pierwszy do wycięcia od początku, a jeżeli ktory jest ujemny to od konca Funkcja wytnie tyle elementów, ile wskazuje zmienna (liczba) dlugosc. Wszystkie tnie na prawo.

88 Funkcje używane w czasie operacji z tablicami 17 Funkcja array_splice() działa podobnie do array_slice, tylko że zastępuje dodatkowo wycięte elementy elementami z innej tablicy. Funkcja shuffle() sortuje elementy tablicy w przypadkowej kolejności (indeksy ustawia random)

89 Operacje wejścia-wyjścia i system plików. Operacje na plikach są szczególnie ważne w PHP. Umożliwiają one wprowadzanie i wyprowadzanie danych. Można także wywoływać programy zewnętrzne, a nawet modyfikować informacje o serwerze. Jeżeli korzystamy z serwera baz danych MySQL niekoniecznie musimy używać funkcji wejścia- wyjścia.

90 Operacje wejścia-wyjścia i system plików 2 Funkcja file_exist($plik) zwraca true jeżeli plik o nazwie $plik istnieje Funkcja is_file($plik) zwraca prawdę, ale tylko gdy plik istnieje i można z niego odczytywać oraz zapisywać do niego informacje (gdy plik jest -rw). Funkcja filesize($plik) zwraca wielkość pliku w bajtach lub fałsz gdy taki plik nie istnieje.

91 Operacje wejścia-wyjścia i system plików 3 Otwieranie i zamykanie plików - funkcja fopen($plik,$tryb) $tryb=r, w, w+ (utworzenie nowego pliku), A (append), a+ (odczyt i append) fclose($zm_plikowa)

92 Operacje z plikami 4

93 Zapisywanie danych do pliku Funkcja is_writeable(string plik) sprawdza możliwość zapisywania danych do pliku i do katalogu funkcja fwrite() zapisuje dane do pliku składnia fwrite($zm_plikowa,$dane); zamiennie można używać fputs() - alias

94 Przykład zapisania danych do pliku

95 Odczytywanie danych z pliku Funkcja is_readable() analogicznie sprawdza, czy możliwe jest otwarcie danego pliku do odczytu funkcja fread($zm_plikowa,$dl_ciagu_znakow) służy do odczytywania ciągu znaków. Pobierany jest ciąg o określonej długości.

96 Przykład odczytywania danych z pliku

97 Odczytywanie danych z pliku 2 Do odczytywania pojedyńczych znaków służy funkcja fgetc($zm_plikowa) do odczytywania ciągów znakowych podobnie jak fread() jest funkcja fgets($zm_plikowa,234), gdzie 234 to liczba bądź zmienna, określająca długość wczytywanego ciągu znaków

98 Odczytywanie danych z pliku 3 Podobna do fgets() jest funkcja fgetss($zm_plikowa,234), gdzie 234 to liczba bądź zmienna, określająca długość wczytywanego ciągu znaków Jest jednak bardziej użyteczną funkcją do odczytywania informacji ze stron HTML i programów PHP, ponieważ podczas wczytywania plików usuwa wszystkie znaczniki.

99 Fgetc() przykład

100 Funkcja file() Funkcja file służy do pobierania z pliku łańcuchów tekstowych linia po linii. Wywołanie $tablica=file('dane.txt'); powoduje wczytanie do tablicy $tablica poszczególnych linii z pliku dane.txt, tak że pierwsza linia to $tablica[0], druga linia $tablica[1], trzecia $tablica[2].....itd.

101 Uruchamianie programów na serwerze Czasami jest potrzeba zdalnego uruchomienia programu, który znajduje się na serwerze. Jest to szczególnie przydatne przy zarządzaniu systemem przez sieć, zdalnym zamykaniu systemu. Komunikaty wykonującego się programu idące do okna systemowego wgrywane są do tablicy wierszami

102 Przykład wywoływania programów i poleceń systemowych Polecenie umieszczamy w odwróconych apostrofach (klawisz odwróconego apostrofu jest z lewej obok klawisza 1) przykład: $output=`dir` print $output. " "

103 Pliki na serwerze PHP oferuje funkcje do modyfikowania i przeglądania plików na serwerze. Możemy uzyskać takie informacje, jak: lokalizacja, właściciel, prawa dostępu, wielkość pliku itp.

104 basename() Funkcja basename dostarcza informacji o nazwie pliku o podanej ścieżce Przykład: $plik=basename("c:\FoxServ\www\index.php); //spowoduje to podstawienie index.php za $plik

105 stat() Podaje różne informacje o pliku ładując je do tablicy indeksowanej od 0 do 12. Przykład: $tab=stat($plik); $tab[7] podaje informacje o długości pliku w bajtach.

106 chmod() chmod($file,$dostep) zmienia tryb pliku $file – zmienna określająca plik, $dostep - to zmienna typu int ale musi być podana ósemkowo np – określa rodzaj dostępu do pliku – tylko właściciel ma prawo do odczytu i zapisu

107 fileperms() fileperms($plik); zwraca prawa dostępu do pliku określonego w zmiennej $plik, lub fałsz w razie wystąpienia błędu

108 chown() Nazwa pochodzi od skrótu change owner. chown($plik,$user); $user oznacza nowego użytkownika. Tylko uprzywilejowany użytkownik może zmienić właściciela pliku.

109 fileowner() Funkcja ta zwraca ID użytkownika, który jest właścicielem pliku. Przykład: $id=fileowner($plik)

110 Kopiowanie i zmiana nazw plików copy($plik1,$plik2) kopiuje plik źródłowy plik1 do pliku docelowego plik2 $plikx są typu string rename($plik1,$plik2) zmienia nazwę z $plik1 na $plik2

111 Usuwanie plików W innych niż Windows systemach powinna działać funkcja unlink($plik); W Windows lepiej zastosować wywołanie polecenia systemowego: system("del nazwa_pliku.txt");

112 Praca z folderami is_dir($katalog) sprawdza, czy istnieje katalog o nazwie podanej w zmiennej $katalog. mkdir($sciezka,$uprawnienia); zakłada katalog określony w zmiennej $sciezka $uprawnienia są typu int

113 Praca z folderami 2 readdir($katalog); zwraca wszystkie elementy katalogu w postaci string $katalog=opendir($sciezka); potem closedir($katalog);

114 PHP a bazy danych

115 PHP a baza danych mysql_select_db($database_localhost, $localhost); $query_Pracownicy_sz = "SELECT * FROM pracownicy WHERE ID = '$id_n' "; $Pracownicy_sz = mysql_query($query_Pracownicy_sz, $localhost_kf1) or die(mysql_error()); $row_Pracownicy_sz = mysql_fetch_assoc($Pracownicy_sz); $totalRows_Pracownicy_sz = mysql_num_rows($Pracownicy_sz); ?>

116 PHP a bazy danych $mail= "mailto:".$row_Pracownicy_sz['e_mail']; echo " "."wyślij wiadomość"." "; ?>


Pobierz ppt "Wstęp do baz danych - język programowania PHP Dr Andrzej Bąk."

Podobne prezentacje


Reklamy Google