Mistrz_PHP_Pisz_nowoczesny_kod_misphp.pdf

(924 KB) Pobierz
1097911239.001.png
Ty t uł oryginału: PHP Master: Write Cutting-edge Code
Tłumaczenie: Łukasz Piwko
ISBN: 978-83-246-4472-8
© Helion 2012.
Authorized Polish translation of the English edition of PHP Master, 1st Edition
ISBN 9780987090874 © 2011, SitePoint Pty. Ltd.
This translation is published and sold by permission of O’Reilly Media, Inc., theźowner of all rights to
publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail: helion@helion.pl
WWW: http://helion.pl (księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/misphp
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
1097911239.002.png
Spis treci
Wstp ........................................................................................................................ 13
Adresaci ksiki .......................................................................................................... 13
Zawarto ksiki ....................................................................................................... 14
Strona internetowa ksiki ......................................................................................... 16
Podzikowania ........................................................................................................... 16
Konwencje typograficzne ............................................................................................ 17
Wskazówki, uwagi i ostrzeenia ................................................................................. 18
Rozdzia 1. Programowanie obiektowe .................................................... 19
Dlaczego programowanie obiektowe ......................................................................... 19
Terminologia obiektowa ....................................................................................... 19
Wprowadzenie do programowania obiektowego ....................................................... 20
Deklarowanie klas ................................................................................................ 20
Konstruktory ......................................................................................................... 21
Tworzenie obiektów ............................................................................................. 21
Automatyczne adowanie ..................................................................................... 22
Uywanie obiektów .............................................................................................. 23
Wasnoci i metody statyczne ............................................................................... 23
Obiekty i przestrzenie nazw .................................................................................. 24
Dziedziczenie .............................................................................................................. 27
Obiekty i funkcje ......................................................................................................... 29
Okrelanie typów parametrów .............................................................................. 29
Polimorfizm .......................................................................................................... 29
Obiekty i referencje ............................................................................................... 30
Przekazywanie obiektów jako parametrów funkcji ................................................ 31
Pynne interfejsy ................................................................................................... 32
Sowa kluczowe public, private i protected ................................................................. 33
Modyfikator public ............................................................................................... 33
Modyfikator private .............................................................................................. 33
Modyfikator protected .......................................................................................... 34
Wybór zakresu dostpnoci .................................................................................. 34
Kontrola dostpnoci przy uyciu metod sprawdzajcych i ustawiajcych ............. 35
Magiczne metody __get i __set ............................................................................ 36
Interfejsy .................................................................................................................... 37
Interfejs Countable z biblioteki SPL ....................................................................... 37
Liczenie obiektów ................................................................................................. 37
Deklarowanie i uywanie interfejsów ................................................................... 38
Identyfikowanie obiektów i interfejsów ................................................................ 39
6
Mistrz PHP. Pisz nowoczesny kod
Wyjtki ....................................................................................................................... 40
Obsuga wyjtków ................................................................................................ 40
Dlaczego naley uywa wyjtków ....................................................................... 41
Zgaszanie wyjtków ............................................................................................ 41
Rozszerzanie klas wyjtków .................................................................................. 41
Przechwytywanie wybranych typów wyjtków ..................................................... 42
Ustawianie globalnej procedury obsugi wyjtków ............................................... 43
Wywoania zwrotne ............................................................................................. 44
Metody magiczne — zaawansowane wiadomoci ..................................................... 44
Metody __call() i __callStatic() .............................................................................. 45
Drukowanie zawartoci obiektów przy uyciu metody __toString() ....................... 46
Serializacja obiektów ............................................................................................ 46
Osignite cele ........................................................................................................... 48
Rozdzia 2. Bazy danych ................................................................................ 49
Dane trwae i aplikacje sieciowe ................................................................................. 49
Sposoby skadowania danych ..................................................................................... 50
Budowanie serwisu z przepisami na podstawie bazy MySQL ...................................... 51
Tworzenie tabel .................................................................................................... 51
Rozszerzenie PDO ....................................................................................................... 53
czenie si z baz MySQL przy uyciu PDO .......................................................... 53
Pobieranie danych z tabel w bazie ........................................................................ 54
Tryby pobierania danych ...................................................................................... 54
Parametry i instrukcje preparowane ...................................................................... 55
Wizanie wartoci i zmiennych z instrukcjami preparowanymi .............................. 57
Wstawianie wiersza i pobieranie jego identyfikatora ............................................ 58
Sprawdzanie liczby wstawionych, zmienionych i usunitych rekordów ................. 59
Usuwanie danych ................................................................................................. 60
Obsuga bdów w PDO ............................................................................................. 60
Obsuga bdów zwizanych z przygotowywaniem zapyta ................................. 60
Obsuga bdów zwizanych z wykonywaniem zapyta ....................................... 61
Obsuga bdów zwizanych z pobieraniem danych ............................................. 62
Zaawansowane funkcje PDO ...................................................................................... 63
Transakcje a PDO .................................................................................................. 63
Procedury skadowane i PDO ................................................................................ 64
Projektowanie bazy danych ........................................................................................ 65
Klucze gówne i indeksy ........................................................................................ 65
Polecenie MySQL Explain ...................................................................................... 65
Zczenia wewntrzne .......................................................................................... 69
Zczenia zewntrzne ............................................................................................ 70
Funkcje agregujce i grupowanie ......................................................................... 71
Normalizacja danych ............................................................................................ 72
Podsumowanie .......................................................................................................... 74
7
SPIS TRECI
Rozdzia 3. Interfejsy programistyczne ...................................................... 75
Zanim zaczniesz ......................................................................................................... 75
Narzdzia do pracy z API ...................................................................................... 75
Dodawanie API do systemu .................................................................................. 76
Architektura usugowa ............................................................................................... 76
Formaty danych .......................................................................................................... 77
Format JSON ......................................................................................................... 77
Format XML .......................................................................................................... 79
HTTP — protokó przesyania hipertekstu ................................................................... 82
Dane przesyane w nagówkach HTTP ................................................................... 82
Wysyanie da HTTP .......................................................................................... 83
Kody statusu HTTP ................................................................................................ 87
Nagówki HTTP ..................................................................................................... 87
Czasowniki HTTP .................................................................................................. 91
Kryteria wyboru typów usug ...................................................................................... 92
PHP i SOAP ........................................................................................................... 92
Opis usug SOAP za pomoc jzyka WSDL ............................................................ 94
Diagnozowanie HTTP ................................................................................................. 95
Gromadzenie informacji w dzienniku .................................................................... 95
Kontrola ruchu HTTP ............................................................................................. 96
Usugi RPC ................................................................................................................. 96
Korzystanie z usug RPC: przykad na podstawie serwisu Flickr ............................. 97
Tworzenie usugi RPC ........................................................................................... 98
Usugi sieciowe a Ajax .............................................................................................. 100
dania midzydomenowe ................................................................................. 104
Usugi RESTful .......................................................................................................... 106
Wicej ni pikne adresy URL ............................................................................. 107
Zasady usug RESTful .......................................................................................... 107
Budowanie usugi RESTful .................................................................................. 108
Projektowanie usugi sieciowej ................................................................................. 114
Do usug .................................................................................................................. 115
Rozdzia 4. Wzorce projektowe ................................................................. 117
Czym s wzorce projektowe ..................................................................................... 117
Wybieranie wzorca ............................................................................................. 117
Wzorzec singleton .............................................................................................. 118
Cechy ................................................................................................................. 119
Wzorzec rejestr ................................................................................................... 120
Wzorzec fabryka ................................................................................................. 124
Wzorzec iterator ................................................................................................. 125
Wzorzec obserwator ........................................................................................... 133
Zgłoś jeśli naruszono regulamin