Web Application Development with PHP 4.0

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

I think this book is a must for every PHP programmer who would like to upgrade their skill to advance level. This book is not for a novice.

If you would like to know the "in and out" of PHP, and becoming expert in PHP, you must buy this book :)

Author(s): Tobias Ratschiller, Till Gerken
Publisher: Sams
Year: 2000

Language: English
Pages: 444

Webanwendungen mit PHP 4.0 entwickeln......Page 3
Über den Technischen Berater......Page 13
Über Zend Technologies, LTD.......Page 14
Danksagungen von Till......Page 15
Sagen Sie uns, was Sie denken......Page 17
Vorwort von Zeev Suraski......Page 18
Erweiterte Syntax......Page 5
Programmentwicklung: ein Praxisbeispiel......Page 6
Grundlegende Webanwendungsstrategien......Page 7
Datenbankzugriff mit PHP......Page 8
Fallstudien......Page 9
Erweiterung von PHP 4.0: Knacken wir den PHP-Kern......Page 10
Stichwortverzeichnis......Page 12
Einführung......Page 21
Voraussetzungen......Page 22
Aufbau dieses Buches......Page 23
In diesem Buch verwendete Konventionen......Page 25
Teil 1: PHP für Fortgeschrittene......Page 27
Ist PHP etwas für mich?......Page 29
Warum Sie diesen Abschnitt lesen sollten......Page 30
Auswählen von Namen......Page 33
Lesbarmachen Ihres Codes......Page 35
Hinzufügen von Kommentaren......Page 40
Datei-Header-Kommentare......Page 41
Extraktion von Blockkommentaren in UNIX......Page 42
Modul-Header-Kommentare......Page 43
Funktions-Header-Kommentare......Page 44
Eingebettete Kommentare......Page 45
Auswählen von sprechenden Namen......Page 47
Der Vorteil von kleinen Größen......Page 48
Generieren von klaren und konsistenten Schnittstellen......Page 50
Unterteilung des Programms in logische Gruppen......Page 51
Abtrennen separater Programmteile......Page 52
Verwenden von Dateien zur Gruppierung von Funktionen......Page 53
Schreiben einer Dokumentation......Page 54
Entwicklung einer Anwendungsprogrammschnittstelle......Page 55
Zusammenfassung......Page 61
PHP-Syntax......Page 63
Definition von Konstanten......Page 64
Array-Funktionen......Page 66
Fehlerberichterstattung......Page 70
PHP und objektorientierte Programmierung......Page 74
Klassen in PHP 3.0......Page 80
Implementierung von Klassen......Page 81
Zugriff auf Objekte......Page 82
Konstruktoren......Page 83
Spezielle Funktionen für objektorientierte Programmierung......Page 85
Quellcode für den »Einkaufswagen«......Page 86
Verknüpfte Listen und Baumstrukturen – ein Arbeitsansatz......Page 88
Assoziative Arrays......Page 99
Mehrdimensionale Arrays......Page 102
Variable Argumente......Page 103
Variable Argumentenlisten......Page 112
Variable Variablennamen......Page 114
Variable Funktionsnamen......Page 116
Polymorphisierung und selbstmodifizierender Code......Page 118
Dynamischer Funktionsgenerator......Page 120
Selbstmodifizierender Zähler......Page 127
Zusammenfassung......Page 128
Projektüberblick......Page 129
Vergleich von Technologien......Page 131
Grundlagen des IRC Netzwerks......Page 134
RFC für IRC......Page 135
Einpassen der Anwendung in das Netzwerk......Page 137
Schnittstelle zum Netzwerk......Page 139
Struktur der Schnittstelle......Page 142
Downstream-Kommunikation......Page 143
Upstream-Kommunikation......Page 145
Setzen eines Flags in einer Datenbank......Page 147
Verwendung von Semaphoren......Page 148
Setzen von Flags im Shared Memory......Page 149
Schnittstelle zum Benutzer......Page 150
Schnittstelle zum Entwickler......Page 151
Schnittstelle zum Programmcodeentwickler......Page 152
Verwaltung und Sicherheit......Page 158
Auf der PHP/Webserver-Ebene......Page 159
Auf der IRC-Ebene......Page 160
Zusammenfassung......Page 161
Teil 2: Webanwendungen......Page 163
Statuskontrolle......Page 165
Sitzungskennnummer-Verteilung mit Cookies......Page 168
Dynamische Pfade......Page 169
Einlesen von mod_rewrite......Page 171
Nicht für Hochleistungs-Websites......Page 172
DNS-Tricks......Page 173
Ein Kompromiss für die Praxis......Page 174
PHPs eigene Sitzungsbibliothek......Page 175
Ablauf einer Sitzung......Page 176
Aktivieren von track_vars und register_globals......Page 177
Serialisierung von Daten......Page 179
Ausschluss von Argumenten......Page 180
Seiten-Caching......Page 183
PHP 3.0-Sitzungen......Page 184
Sicherheitsaspekte......Page 185
Vertrauen Sie dem Web nicht......Page 186
Ausführen von Systembefehlen......Page 187
Belastete Variablen......Page 189
Reihenfolge der PHP- Variablen......Page 191
Symmetrische Verschlüsselung......Page 193
Verschlüsselung mit öffentlichem Schlüssel......Page 194
Der Verschlüsselungsstandard: Pretty Good Privacy (PGP)......Page 195
Die Mcrypt-Funktionen......Page 200
Integrieren Sie Fachleute in Ihr Team......Page 202
Authentisierung......Page 204
Der Datenverkehr sollte sicher sein......Page 205
HTTP-Authentisierung......Page 206
Die Bedeutung der Tauglichkeit......Page 207
Tauglichkeit in Webanwendungen......Page 208
Ist es geeignet?......Page 209
Ist eine Benutzerkontrolle möglich?......Page 210
Entspricht es der Benutzererwartung?......Page 211
Ist es benutzerspezifisch?......Page 212
Einfache Tauglichkeitsprüfung (Discount Usability Engineering)......Page 213
Vereinfachtes lautes Denken......Page 214
Heuristische Auswertung......Page 215
Hilfe für Benutzer zum Erkennen und Beheben von Fehlern......Page 216
Zusammenfassung......Page 217
Literaturhinweise......Page 218
Grundlegende Webanwendungsstrategien......Page 219
Die PHP-Normal Form......Page 220
Überprüfung einer Email-Adresse......Page 224
Verwendung von HTML-Schablonen......Page 227
Zusammenarbeit im Team......Page 229
Verzeichnisstruktur......Page 230
Versionsverwaltung mit CVS......Page 233
CVS-Optimierung: Grafische Benutzeroberflächen und CVSweb......Page 238
Tags und Versionszweige......Page 240
Automatische Benachrichtigung......Page 242
CVS-Kurzreferenz......Page 248
Herkömmliches Client/Server-Modell......Page 249
PHP und mehrstufige Anwendungen......Page 250
PHP und COM......Page 251
PHP und Java......Page 255
Zusammenfassung......Page 256
PHPLib: Die PHP-Basisbibliothek......Page 257
Vorteile und Nachteile......Page 258
Anpassung von PHPLib......Page 259
Portierbarkeit......Page 260
Fehlerbehandlung......Page 262
DB_Sql-Beispiel......Page 263
Automatischer Rückfallmodus......Page 266
Session-Beispiel......Page 267
Abkürzungen I: page_open()......Page 271
Abkürzungen II: purl(), url() und pself()......Page 272
Vorteile der PHP-Genehmigung......Page 273
Auth-Beispiel......Page 274
Auth-Interna......Page 275
Verwaltung von Berechtigungsebenen......Page 279
Bitweise Berechnungen......Page 280
Umschalten eines Bit......Page 281
Operatorrangfolge......Page 282
Beispiel......Page 283
Zusammenfassung......Page 286
Wissensrepräsentation......Page 287
Anforderungskatalog......Page 289
Spezifikation......Page 290
Die Klasse Template......Page 293
Rekursion mit SQL......Page 300
Das fertige Produkt......Page 301
Strukturierte Information......Page 302
XML-Verwandte......Page 303
Vorteile von XML......Page 305
DocBook......Page 306
WML – Wireless Markup Language......Page 307
XML-Dokumente......Page 308
Attribute......Page 309
Entitäten......Page 310
CDATA-Abschnitte......Page 311
Prolog des Dokuments......Page 312
XML-Namensräume......Page 313
Gültigkeit und Wohlgeformtheit......Page 316
PHP und Expat......Page 317
Ereignisbasierte API......Page 318
Stapel, Tiefen und Listen......Page 321
DOM – das Dokumentenobjektmodell......Page 327
Element......Page 329
Notation......Page 330
Beispiel: Analyse eines kurzen Dokuments mit dem DOM......Page 331
LibXML – ein DOM-basierter XML-Parser......Page 332
XML-Dokumente......Page 333
Knoten......Page 334
XML-Bäume......Page 338
Datenaustausch mit WDDX......Page 340
Die Herausforderung......Page 341
Abstrahierung von Daten mit WDDX......Page 342
WDDX-Datentypen......Page 343
Die WDDX-Funktionen......Page 345
Zusammenfassung......Page 347
Web Mail......Page 349
Entscheidung für PHP......Page 350
Begierig auf Updates......Page 352
Firmenhintergrund......Page 353
Warum PHP?......Page 354
Technologieüberlegungen......Page 356
PHP im Einsatz......Page 357
PHP: Ein Geschäftsvorteil......Page 358
Die PHP Produkte......Page 359
Vorteile von PHP für die Produktentwicklung von MarketPlayer. com......Page 360
Bewährung im Alltag......Page 361
Sitzungsverwaltung......Page 362
Codeverwaltung......Page 363
Referenzen......Page 364
Teil 3: Über die Grenzen von PHP hinaus......Page 365
Überblick......Page 367
Was ist Zend und was ist PHP?......Page 368
Externe Module......Page 369
Die Zend Engine......Page 370
Struktur der Quellen......Page 371
Speicherverwaltung......Page 373
Verzeichnis- und Dateifunktionen......Page 374
PHPs automatisches Erstellungssystem......Page 375
Erweiterungen erzeugen......Page 378
Kompilierung von Modulen......Page 379
Kompilierung mithilfe von Make......Page 380
Manuelles Kompilieren......Page 381
Erweiterungen verwenden......Page 382
Einblick in die Quellen......Page 383
Deklaration exportierter Funktionen......Page 384
Deklarationen des Zend-Funktionsblocks......Page 386
Deklaration des Zend-Modulblocks......Page 388
Einbettung von get_module()......Page 392
Annahme von Argumenten......Page 393
Anzahl der Argumente feststellen......Page 394
Auslesen von Argumenten......Page 395
Verarbeitung mit einer variablen Anzahl von Argumenten/optionalen Parametern......Page 396
Zugriff auf Argumente......Page 398
Verarbeitung von Argumenten, die durch Referenz übergeben wurden......Page 404
Gewährleistung der Schreibsicherheit für andere Parameter......Page 406
Überblick......Page 407
Longs (Integer)......Page 411
Strings......Page 412
Arrays......Page 413
Objekte......Page 417
Ressourcen......Page 418
Makros zur automatischen Erstellung von globalen Variablen......Page 420
Erstellen von Konstanten......Page 421
Duplizierung variabler Inhalte: Der Copy-Konstruktor......Page 422
Rückgabe von Werten......Page 424
zend_error()......Page 426
Ausgabe einbinden in phpinfo()......Page 427
Informationen über die Ausführung......Page 428
Initialisierungs- und Deinitialisierungsfunktionen......Page 429
Aufruf von Benutzerfunktionen......Page 430
Unterstützung für Initialisierungsdateien......Page 433
Wie geht es weiter?......Page 435
config.m4......Page 436
Zusätzliche API-Makros......Page 437
D......Page 439
H......Page 440
O......Page 441
S......Page 442
X......Page 443
Z......Page 444