WstÄ™p :: 15 1. ĹaĹ„cuchy znakĂłw :: 23 1.0. Wprowadzenie :: 23 1.1. Uzyskiwanie dostÄ™pu do podĹ‚aĹ„cuchĂłw znakĂłw :: 26 1.2. WyodrÄ™bnianie podĹ‚aĹ„cuchĂłw znakĂłw :: 27 1.3. ZastÄ™powanie podĹ‚aĹ„cuchĂłw znakĂłw :: 29 1.4. Przetwarzanie Ĺ‚aĹ„cucha znakĂłw znak po znaku :: 30 1.5. Odwracanie kolejnoĹ›ci słów lub znakĂłw w Ĺ‚aĹ„cuchu znakĂłw :: 32 1.6. Poszerzanie i zwężanie tabulatorĂłw :: 33 1.7. Kontrolowanie wielkoĹ›ci liter :: 35 1.8. Umieszczanie funkcji i wyraĹĽeĹ„ wewnÄ…trz Ĺ‚aĹ„cuchĂłw znakĂłw :: 37 1.9. Odcinanie od ciÄ…gĂłw tekstowych znakĂłw niewidocznych :: 38 1.10. Generowanie danych rozdzielanych znakami przecinka :: 40 1.11. Parsowanie danych oddzielanych przecinkami :: 41 1.12. Generowanie rekordĂłw danych o staĹ‚ej szerokoĹ›ci pĂłl :: 42 1.13. Parsowanie danych o staĹ‚ej szerokoĹ›ci :: 44 1.14. Dzielenie Ĺ‚aĹ„cuchĂłw znakĂłw :: 47 1.15. Ĺamanie tekstu do okreĹ›lonej dĹ‚ugoĹ›ci linii :: 49 1.16. Przechowywanie danych binarnych w Ĺ‚aĹ„cuchach znakĂłw :: 51 1.17. Program — pobieranie pliku CSV :: 53 2. Liczby :: 57 2.0. Wprowadzenie :: 57 2.1. Sprawdzanie, czy zmienna zawiera poprawnÄ… liczbÄ™ :: 58 2.2. PorĂłwnywanie liczb zmiennopozycyjnych :: 59 2.3. ZaokrÄ…glanie liczb zmiennopozycyjnych :: 60 2.4. Wykonywanie operacji na seriach liczb caĹ‚kowitych :: 61 2.5. Generowanie liczb losowych z danego przedziaĹ‚u :: 63 2.6. Generowanie waĹĽonych liczb losowych :: 65 2.7. Obliczanie logarytmĂłw :: 66 2.8. Obliczanie potÄ™g :: 66 2.9. Formatowanie liczb :: 67 2.10. Formatowanie wartoĹ›ci walutowych :: 69 2.11. WyĹ›wietlanie słów w liczbie mnogiej :: 70 2.12. Obliczanie wartoĹ›ci funkcji trygonometrycznych :: 72 2.13. Obliczanie funkcji trygonometrycznych w stopniach, a nie w radianach :: 73 2.14. ObsĹ‚uga bardzo duĹĽych lub bardzo maĹ‚ych liczb :: 73 2.15. PrzeksztaĹ‚canie liczb z jednego systemu liczbowego na inny :: 75 2.16. Wykonywanie obliczeĹ„ na liczbach systemĂłw innych niĹĽ dziesiÄ™tny :: 76 2.17. OkreĹ›lenie odlegĹ‚oĹ›ci miÄ™dzy dwoma punktami :: 78 3. Daty i czas :: 81 3.0. Wprowadzenie :: 81 3.1. Sprawdzanie aktualnej daty i czasu :: 82 3.2. PrzeksztaĹ‚canie elementĂłw daty i czasu w znaczniki czasu epoki :: 85 3.3. PrzeksztaĹ‚canie znacznika czasu epoki w elementy czasu i daty :: 87 3.4. WyĹ›wietlanie daty lub czasu w okreĹ›lonym formacie :: 88 3.5. Obliczanie różnicy miÄ™dzy dwiema datami :: 93 3.6. Obliczanie różnicy miÄ™dzy dwiema datami mierzonej w dniach liczonych wedĹ‚ug kalendarza juliaĹ„skiego :: 95 3.7. Znajdowanie dnia tygodnia, miesiÄ…ca lub roku oraz numeru tygodnia w roku :: 96 3.8. Weryfikacja poprawnoĹ›ci daty :: 98 3.9. Parsowanie dat i czasu z Ĺ‚aĹ„cuchĂłw znakĂłw :: 100 3.10. Dodawanie lub odejmowanie czasu od daty :: 103 3.11. Wyznaczanie czasu w strefach czasowych :: 104 3.12. UwzglÄ™dnianie czasu letniego :: 110 3.13. Generowanie czasu o wysokiej precyzji :: 111 3.14. Generowanie przedziałów czasowych :: 113 3.15. Stosowanie kalendarzy innych niĹĽ gregoriaĹ„ski :: 114 3.16. Korzystanie z dat wykraczajÄ…cych poza zakres znacznika czasu epoki uniksowej :: 118 3.17. Program Calendar :: 120 4. Tablice :: 123 4.0. Wprowadzenie :: 123 4.1. Tworzenie tablicy zaczynajÄ…cej siÄ™ od indeksu różnego od 0 :: 125 4.2. Przechowywanie w tablicy wielu elementĂłw pod jednym kluczem :: 127 4.3. Inicjowanie tablicy liczbami caĹ‚kowitymi z okreĹ›lonego przedziaĹ‚u :: 128 4.4. Iterowanie przez kolejne elementy tablicy :: 129 4.5. Usuwanie elementĂłw z tablicy :: 131 4.6. Zmienianie rozmiaru tablicy :: 133 4.7. ĹÄ…czenie tablic :: 135 4.8. PrzeksztaĹ‚canie tablicy w Ĺ‚aĹ„cuch znakĂłw :: 137 4.9. WyĹ›wietlanie zawartoĹ›ci tablicy z przecinkami :: 138 4.10. Sprawdzanie, czy klucz jest w tablicy :: 139 4.11. Sprawdzanie, czy element jest w tablicy :: 140 4.12. Znajdowanie pozycji elementu w tablicy :: 142 4.13. Znajdowanie elementĂłw, ktĂłre speĹ‚niajÄ… odpowiednie warunki :: 143 4.14. Znajdowanie elementu tablicy o najwiÄ™kszej lub najmniejszej wartoĹ›ci :: 144 4.15. Odwracanie tablicy :: 145 4.16. Sortowanie tablicy :: 146 4.17. Sortowanie tablicy na podstawie porĂłwnywalnych pĂłl :: 147 4.18. Sortowanie wielu tablic :: 149 4.19. Sortowanie tablicy przy uĹĽyciu metody, a nie funkcji :: 151 4.20. Ustawianie elementĂłw tablicy w kolejnoĹ›ci losowej :: 151 4.21. Usuwanie z tablicy powtarzajÄ…cych siÄ™ elementĂłw :: 152 4.22. Przypisanie funkcji do kaĹĽdego elementu tablicy :: 153 4.23. Wyznaczanie sumy, przeciÄ™cia lub różnicy miÄ™dzy dwiema tablicami :: 155 4.24. Wykorzystanie obiektu w sposĂłb charakterystyczny dla tablic :: 157 4.25. Program — wyĹ›wietlanie tablicy w tabeli HTML z kolumnami uĹ‚oĹĽonymi w poziomie :: 160 5. Zmienne :: 163 5.0. Wprowadzenie :: 163 5.1. Unikanie pomyĹ‚ek miÄ™dzy operatorami == i = :: 164 5.2. Ustalanie wartoĹ›ci domyĹ›lnej :: 165 5.3. Wymiana wartoĹ›ci bez uĹĽywania zmiennych tymczasowych :: 166 5.4. Tworzenie dynamicznej nazwy zmiennej :: 167 5.5. Stosowanie zmiennych statycznych :: 168 5.6. Współdzielenie zmiennych pomiÄ™dzy procesami :: 170 5.7. Enkapsulacja zĹ‚oĹĽonych typĂłw danych do postaci Ĺ‚aĹ„cucha znakĂłw :: 174 5.8. WyĹ›wietlanie zawartoĹ›ci zmiennej w postaci Ĺ‚aĹ„cuchĂłw znakĂłw :: 176 6. Funkcje :: 181 6.0. Wprowadzenie :: 181 6.1. Uzyskiwanie dostÄ™pu do parametrĂłw funkcji :: 182 6.2. Ustawianie domyĹ›lnych wartoĹ›ci parametrĂłw funkcji :: 183 6.3. Przekazywanie wartoĹ›ci przez referencjÄ™ :: 185 6.4. Stosowanie parametrĂłw nazwanych :: 185 6.5. Tworzenie funkcji pobierajÄ…cych zmiennÄ… liczbÄ™ argumentĂłw :: 187 6.6. Zwracanie wartoĹ›ci przez referencjÄ™ :: 189 6.7. Zwracanie wiÄ™cej niĹĽ jednej wartoĹ›ci :: 191 6.8. Pomijanie pewnych zwracanych wartoĹ›ci :: 192 6.9. Zwracanie błędu :: 193 6.10. WywoĹ‚ywanie funkcji zaleĹĽnie od wartoĹ›ci zmiennych :: 195 6.11. DostÄ™p do zmiennej globalnej wewnÄ…trz funkcji :: 197 6.12. Tworzenie funkcji dynamicznych :: 198 7. Klasy i obiekty :: 201 7.0. Wprowadzenie :: 201 7.1. Tworzenie egzemplarzy klasy :: 205 7.2. Definiowanie konstruktorĂłw obiektĂłw :: 206 7.3. Definiowanie destruktorĂłw obiektu :: 207 7.4. Kontrola dostÄ™pu :: 209 7.5. Zabezpieczenie klas i metod przed zmianami :: 211 7.6. PrzeksztaĹ‚canie obiektu w ciÄ…g tekstowy :: 213 7.7. Tworzenie interfejsĂłw :: 215 7.8. Tworzenie abstrakcyjnej klasy bazowej :: 217 7.9. Przypisywanie referencji do obiektĂłw :: 220 7.10. Klonowanie obiektĂłw :: 220 7.11. PrzesĹ‚oniÄ™cie procedury dostÄ™pu do wĹ‚aĹ›ciwoĹ›ci :: 223 7.12. WywoĹ‚ywanie metod obiektu zwracanego przez innÄ… metodÄ™ :: 227 7.13. Agregowanie obiektĂłw :: 228 7.14. DostÄ™p do metod przesĹ‚oniÄ™tych :: 231 7.15. Wykorzystanie polimorfizmu metod :: 233 7.16. Definiowanie staĹ‚ych klasy :: 235 7.17. Definiowanie statycznych wĹ‚aĹ›ciwoĹ›ci i metod :: 237 7.18. Nadzorowanie serializacji obiektĂłw :: 239 7.19. Introspekcja obiektĂłw :: 240 7.20. Sprawdzenie, czy obiekt jest egzemplarzem okreĹ›lonej klasy :: 244 7.21. Automatyczne pobieranie plikĂłw klasy podczas powoĹ‚ywania obiektu :: 247 7.22. Dynamiczne tworzenie obiektĂłw :: 249 7.23. Program whereis :: 250 8. Podstawy programowania na potrzeby WWW :: 253 8.0. Wprowadzenie :: 253 8.1. Zapisywanie danych cookie :: 254 8.2. Odczytywanie danych cookie :: 256 8.3. Usuwanie danych cookie :: 257 8.4. OdsyĹ‚anie do innej strony :: 258 8.5. Pozyskiwanie informacji o przeglÄ…darkach :: 259 8.6. Konstruowanie zapytania metody GET :: 261 8.7. Odczytywanie treĹ›ci ĹĽÄ…dania POST :: 262 8.8. Tabele HTML z wierszami o różnych atrybutach stylu :: 263 8.9. Proste uwierzytelnianie HTTP :: 264 8.10. Uwierzytelnianie z wykorzystaniem danych cookie :: 268 8.11. Wymuszenie przesĹ‚ania danych do przeglÄ…darki :: 271 8.12. Buforowanie danych wyjĹ›ciowych :: 272 8.13. PrzesyĹ‚anie danych z uĹĽyciem kompresji gzip :: 273 8.14. Odczyt zmiennych Ĺ›rodowiskowych :: 274 8.15. Ustawianie wartoĹ›ci zmiennych Ĺ›rodowiskowych :: 275 8.16. Komunikacja w ramach serwera Apache :: 277 8.17. Program — aktywowanie i dezaktywowanie stron internetowych uĹĽytkownikĂłw :: 278 8.18. Prosty serwis Wiki :: 280 9. Formularze :: 283 9.0. Wprowadzenie :: 283 9.1. Przetwarzanie danych pochodzÄ…cych z formularza :: 285 9.2. Weryfikacja danych formularza — pola obowiÄ…zkowe :: 286 9.3. Weryfikacja danych formularza — liczby :: 288 9.4. Weryfikacja danych formularza — adresy poczty elektronicznej :: 291 9.5. Weryfikacja danych formularza — listy rozwijane :: 292 9.6. Weryfikacja danych formularzy — przyciski opcji :: 294 9.7. Weryfikacja danych formularza — pola wyboru :: 295 9.8. Weryfikacja danych formularza — wartoĹ›ci daty i czasu :: 297 9.9. Weryfikacja danych formularza — dane kart kredytowych :: 298 9.10. Ochrona przed atakami XSS :: 299 9.11. Formularze wielostronicowe :: ...
zachs17