E-book details

PHP. Zaawansowane programowanie

PHP. Zaawansowane programowanie

Peter MacIntyre, Mladen Gogala, Brian Danchilla

Ebook

Zacznij tam, gdzie inni kończą!

PHP jest obecnie najpopularniejszym językiem programowania aplikacji internetowych, a jego znajomość staje się koniecznością dla każdego programisty. "PHP Zaawansowane programowanie" zapozna Cię z nowymi możliwościami wersji 5.3.x, takimi jak przestrzenie nazw, funkcje anonimowe, Nowdoc, SPL oraz archiwa Phar. Doświadczeni programiści PHP znajdą tu przejrzyste wyjaśnienia i przydatne fragmenty kodów dotyczących programowania obiektowego, mobilnych urządzeń klienckich, skalowalnych źródeł danych, XML-a, AJAX-a, JSON-a oraz bezpieczeństwa.

Autorzy tej książki skupiają się na zaawansowanych zagadnieniach związanych z językiem PHP. W trakcie lektury dowiesz się, jak stworzyć aplikację dla platform mobilnych, zintegrować swój serwis z takimi portalami, jak Facebook i Twitter. Znajdziesz tu rozdziały poświęcone ważnemu tematowi programowania baz danych — poczynając od mało znanych baz NoSQL, poprzez CouchDB, MongoDB i SQLite, aż do Oracle, rozszerzeń MySQLi, PDO, ADOdb oraz systemu wyszukiwania pełnotekstowego Sphinx. Nauczysz się korzystać z bibliotek open source oraz parsować wiadomości RSS, generować dokumenty PDF, pobierać dane ze stron WWW, korzystać z bibliotek Map Google i Google Chart, a także tworzyć wiadomości e-mail i SMS. Ta książka zaczyna się w miejscu, w którym inne kończą omawianie PHP. Jeżeli tworzysz nowatorskie aplikacje albo chcesz zintegrować się z serwisami społecznościowymi, musisz ją mieć!

  • Integracja z serwisami Facebook i Twitter
  • Dokumentowanie kodu
  • Wykorzystanie wyspecjalizowanych baz danych
  • Wsparcie dla platform mobilnych

Nawet nie wiedziałeś, że PHP ma takie możliwości!

O autorach (11)

O korektorze merytorycznym (13)

Przedmowa (15)

Wprowadzenie do PHP (17)

Rozdział 1. Obiektowość (21)

  • Klasy (21)
  • Dziedziczenie i przeciążanie (23)
  • "Magiczne" funkcje (27)
    • Metody __get i __set (27)
    • Metoda __isset (28)
    • Metoda __call (28)
    • Metoda __toString() (29)
  • Kopiowanie, klonowanie oraz porównywanie obiektów (29)
  • Interfejsy, iteratory i klasy abstrakcyjne (31)
  • Kontekst klasy i elementy statyczne (35)
  • Podsumowanie (36)

Rozdział 2. Wyjątki i referencje (37)

  • Wyjątki (37)
  • Referencje (41)
  • Podsumowanie (45)

Rozdział 3. Mobilne PHP (47)

  • Różnorodność urządzeń (47)
  • Rozpoznanie urządzenia (48)
    • Aplikacja kliencka (48)
    • Wbudowane funkcje PHP (48)
  • Rozpoznawanie możliwości urządzenia (51)
    • WURFL (51)
    • Tera-WURFL (57)
  • Narzędzia renderujące (60)
    • WALL (60)
    • Reagujący CSS (62)
  • Emulatory i SDK (62)
    • Tworzenie dla systemu Android (62)
    • Adobe Flash Builder dla PHP (62)
  • Kody QR (63)
  • Podsumowanie (64)

Rozdział 4. Media społecznościowe (65)

  • OAuth (65)
  • Twitter (66)
    • API publicznego wyszukiwania (66)
    • Prywatne REST API (67)
    • Wykorzystanie mechanizmu OAuth w celu powiązania strony z systemem logowania (77)
    • Dodatkowe metody API i przykłady jego wykorzystania (80)
  • Facebook (83)
    • Dodanie linku wylogowania z Facebooka (88)
    • Żądanie dodatkowych uprawnień (89)
    • Graph API (89)
  • Podsumowanie (91)

Rozdział 5. Nowości technologiczne (93)

  • Przestrzenie nazw (93)
    • Przestrzenie nazw i autoładowanie (96)
    • Przestrzenie nazw - podsumowanie (96)
  • Funkcje anonimowe (96)
  • Nowdoc (97)
  • Lokalne instrukcje goto (100)
  • Standardowa biblioteka PHP - SPL (100)
    • SPL - podsumowanie (103)
  • Rozszerzenie phar (103)
  • Podsumowanie (106)

Rozdział 6. Tworzenie formularzy i zarządzanie nimi (107)

  • Walidacja danych (107)
  • Wczytywanie plików i obrazów (113)
  • Konwersja obrazów i miniatury (114)
  • Wyrażenia regularne (115)
  • Integracja języków (118)
  • Podsumowanie (119)

Rozdział 7. Integracja z bazami danych. Część I (121)

  • Wprowadzenie do MongoDB (122)
    • Zapytania w MongoDB (126)
    • Modyfikowanie dokumentów w MongoDB (130)
    • Agregacje w MongoDB (132)
    • Podsumowanie MongoDB (134)
  • Wprowadzenie do CouchDB (134)
    • Wykorzystanie interfejsu Futon (135)
    • Podsumowanie CouchDB (140)
  • Wprowadzenie do SQLite (141)
    • Podsumowanie SQLite (149)
  • Podsumowanie (149)

Rozdział 8. Integracja z bazami danych. Część II (151)

  • Wprowadzenie do rozszerzenia MySQLi (151)
    • Podsumowanie rozszerzenia MySQLi (158)
  • Wprowadzenie do PDO (158)
    • Podsumowanie PDO (161)
  • Wprowadzenie do ADOdb (161)
    • Podsumowanie ADOdb (165)
  • Wyszukiwanie pełnotekstowe przy wykorzystaniu Sphinksa (165)
  • Podsumowanie (173)

Rozdział 9. Integracja z bazami danych. Część III (175)

  • Wprowadzenie do Oracle (175)
  • Podstawy. Połączenie i wykonywanie zapytań (177)
  • Interfejs tablicowy (180)
  • Procedury i kursory w PL/SQL (183)
  • Praca z typami LOB (186)
  • Inne podejście do połączeń - pule połączeń (190)
  • Zestawy znaków w bazie danych i PHP (192)
  • Podsumowanie (193)

Rozdział 10. Biblioteki (195)

  • SimplePie (196)
  • TCPDF (199)
    • Pobieranie danych ze stron internetowych (204)
  • Integracja z Mapami Google (209)
  • Wiadomości e-mail i SMS (211)
  • gChartPHP - biblioteka wykorzystująca Google Chart API (215)
  • Podsumowanie (219)

Rozdział 11. Bezpieczeństwo (221)

  • Nigdy nie ufaj danym (221)
    • register_globals (222)
    • Białe i czarne listy (222)
    • Dane formularzy (223)
    • $_COOKIES, $_SESSION i $_SERVER (224)
    • Żądania Ajax (224)
  • Powszechne ataki (225)
    • Polityka tego samego pochodzenia (225)
    • XSS (Cross Site Scripting) (225)
    • CSRF (Cross-Site Request Forgery) (228)
  • Sesje (229)
  • Zapobieganie atakom typu SQL injection (229)
  • Wyrażenia filtrujące (230)
  • Plik php.ini i ustawienia serwera (233)
    • Środowisko serwerowe (233)
    • Zabezpieczanie pliku php.ini (234)
  • Algorytmy haseł (235)
  • Podsumowanie (236)

Rozdział 12. Programowanie zwinne z wykorzystaniem Zend Studio dla Eclipse, Bugzilli, Mylyn i Subversion (237)

  • Zasady programowania zwinnego (237)
  • Rajd programowania zwinnego (238)
  • Wprowadzenie do programu Bugzilla (239)
  • Mylyn dla Eclipse (240)
  • Bugzilla i Mylyn w połączeniu z Eclipse (242)
  • Maksymalizowanie korzyści (245)
  • Podsumowanie (246)

Rozdział 13. Refaktoryzacja, testy jednostkowe i ciągła integracja (249)

  • Refaktoryzacja (249)
    • Niewielka refaktoryzacja (250)
    • Większy przykład (253)
  • Testy jednostkowe (265)
  • Ciągła integracja (279)
    • Serwer ciągłej integracji (280)
    • System kontroli wersji (280)
    • Analiza statyczna (281)
    • Budowanie automatyzacji (282)
    • Uruchomienie serwera Jenkins (282)
  • Podsumowanie (285)

Rozdział 14. XML (287)

  • Podstawy XML (287)
  • Schematy (288)
  • SimpleXML (289)
    • Parsowanie XML z tekstu (289)
    • Parsowanie XML z pliku (290)
    • Przestrzenie nazw (294)
    • RSS (296)
    • Generowanie dokumentów XML za pomocą SimpleXML (298)
  • DOMDocument (303)
  • XMLReader i XMLWriter (305)
  • Podsumowanie (306)

Rozdział 15. JSON i Ajax (307)

  • JSON (308)
    • PHP i JSON (309)
  • Ajax (312)
    • Tradycyjny model WWW (313)
    • Model Ajax (313)
    • Zdarzenia synchroniczne kontra asynchroniczne (315)
    • Obiekt XMLHttpRequest (316)
    • Wykorzystanie obiektu XMLHttpRequest (317)
    • API JavaScript wyższego poziomu (322)
    • Przykłady jQuery (322)
    • Przesyłanie danych z Ajaksa do skryptu PHP (327)
  • Prosty program graficzny (328)
    • Utrzymanie stanu (330)
  • Podsumowanie (335)

Rozdział 16. Konkluzja (337)

  • Zasoby (337)
    • www.php.net (337)
    • www.zend.com (338)
    • devzone.zend.pl (338)
    • www.phparch.com (338)
  • Konferencje (339)
  • Certyfikacja PHP (340)
  • Podsumowanie (341)

Dodatek. Wyrażenia regularne (343)

  • Składnia wyrażeń regularnych (343)
  • Przykłady wyrażeń regularnych (344)
    • Opcje wewnętrzne (347)
    • Chciwość (347)
  • Funkcje wykorzystujące wyrażenia regularne (348)
    • Zamiana ciągów - preg_replace (348)
  • Inne funkcje (350)

Skorowidz (353)

  • Title: PHP. Zaawansowane programowanie
  • Author: Peter MacIntyre, Brian Danchilla, Mladen Gogala
  • Original title: Pro PHP Programming
  • Translation: Jakub Hubisz
  • ISBN: 978-83-246-5634-9, 9788324656349
  • Date of issue: 2012-09-25
  • Format: Ebook
  • Item ID: phpzap
  • Publisher: Helion