Create bookmark
PHP 5 Kochbuch
Beispiele und Lösungen für PHP-Programmierer
Do you like this document?
Notes
Please login to add notes
- Inhalt
- Einleitung
-
+
Kapitel 1: Strings
- 1.0 Einführung
- 1.1 Auf Teil-Strings zugreifen
- 1.2 Teile von Strings ersetzen
- 1.3 Einen String zeichenweise verarbeiten
- 1.4 Einen String wort- oder zeichenweise umkehren
- 1.5 Tabulatoren expandieren und komprimieren
- 1.6 Die Groß- und Kleinschreibung in Texten ändern
- 1.7 Funktionen und Ausdrücke in Strings interpolieren
- 1.8 Leerzeichen aus einem String entfernen
- 1.9 Kommaseparierte Daten zerlegen
- 1.10 Begrenzte Daten mit fester Länge zerlegen
- 1.11 Strings aufteilen
- 1.12 Text an bestimmten Zeilenlängen umbrechen
- 1.13 Binärdaten in einem String speichern
-
+
Kapitel 2: Zahlen
- 2.0 Einführung
- 2.1 Prüfen, ob ein String eine gültige Zahl enthält
- 2.2 Fließkommazahlen vergleichen
- 2.3 Fließkommazahlen runden
- 2.4 Mit Bereichen von Integer-Zahlen arbeiten
- 2.5 Zufallszahlen innerhalb eines Bereichs generieren
- 2.6 Verzerrte Zufallszahlen generieren
- 2.7 Logarithmen berechnen
- 2.8 Potenzen berechnen
- 2.9 Zahlen formatieren
- 2.10 Den Plural korrekt ausgeben
- 2.11 Trigonometrische Funktionen berechnen
- 2.12 Trigonometrische Funktionen mit Graden anstelle von Bogenmaßen berechnen
- 2.13 Mit sehr großen oder kleinen Zahlen arbeiten
- 2.14 Zwischen Zahlensystemen konvertieren
- 2.15 Mit anderen Zahlen als Dezimalzahlen rechnen
-
+
Kapitel 3: Datum und Zeit
- 3.0 Einführung
- 3.1 Das aktuelle Datum und die aktuelle Zeit feststellen
- 3.2 Datums- und Zeitbestandteile in einen Epochen-Zeitstempel konvertieren
- 3.3 Einen Epochen-Zeitstempel in Zeit- und Datumsbestandteile konvertieren
- 3.4 Datum oder Zeit in einem bestimmten Format ausgeben
- 3.5 Die Differenz zwischen zwei Datumswerten berechnen
- 3.6 Den Abstand zwischen zwei Datumswerten über julianische Tage ermitteln
- 3.7 Den Tag der Woche, des Monats, des Jahres oder die Kalenderwoche des Jahres ermitteln
- 3.8 Start- und Enddatum einer Woche errechnen
- 3.9 Ein Datum validieren
- 3.10 Datums- und Zeitwerte aus Strings lesen
- 3.11 Addition und Subtraktion mit einem Datum
- 3.12 Die Zeit mit Zeitzonen berechnen
- 3.13 Geografische Lageinformationen zu einer Zeitzone bestimmen
- 3.14 Die Sommerzeit berücksichtigen
- 3.15 Zeitangaben mit hoher Genauigkeit generieren
- 3.16 Periodisch wiederkehrende Ereignisse berechnen
- 3.17 Andere Kalender als den gregorianischen verwenden
- 3.18 Programm: Kalender
-
+
Kapitel 4: Arrays
- 4.0 Einführung
- 4.1 Ein Array anlegen, das nicht mit dem Element 0 beginnt
- 4.2 Mehrere Array-Elemente unter einem Schlüssel speichern
- 4.3 Ein Array mit einer Folge von Integer-Werten initialisieren
- 4.4 Ein Array durchlaufen
- 4.5 Elemente aus einem Array löschen
- 4.6 Die Größe eines Arrays ändern
- 4.7 Ein Array an ein anderes anfügen
- 4.8 Ein Array in einen String verwandeln
- 4.9 Ein Array mit Kommata ausgeben
- 4.10 Prüfen, ob sich ein Schlüssel in einem Array befindet
- 4.11 Prüfen, ob sich ein Element in einem Array befindet
- 4.12 Die Position eines Elements in einem Array feststellen
- 4.13 Elemente finden, die einer bestimmten Prüfung standhalten
- 4.14 Das Array-Element mit dem größten oder kleinsten Wert finden
- 4.15 Ein Array umkehren
- 4.16 Ein Array sortieren
- 4.17 Ein Array über ein berechnetes Feld sortieren
- 4.18 Mehrere Arrays sortieren
- 4.19 Ein Array mithilfe einer Methode statt einer Funktion sortieren
- 4.20 Ein Array in eine zufällige Reihenfolge bringen
- 4.21 Einen Kartenstapel mischen
- 4.22 Doppelte Elemente aus einem Array entfernen
- 4.23 Die Vereinigungs-, Schnitt- oder Differenzmenge zweier Arrays ermitteln
- 4.24 Alle Elementkombinationen eines Arrays finden
- 4.25 Alle Permutationen eines Arrays finden
- 4.26 Eine Funktion auf jedes Element eines Arrays anwenden
- 4.27 Echte Objekte als Schlüssel von Arrays verwenden
- 4.28 Ein Objekt wie ein Array auftreten lassen
- 4.29 Programm: Ein Array horizontal angeordnet in einer HTML-Tabelle ausgeben
-
+
Kapitel 5: Variablen
- 5.0 Einführung
- 5.1 Die Verwechslung von == und = vermeiden
- 5.2 Einen Vorgabewert festlegen
- 5.3 Werte ohne Hilfe von temporären Variablen austauschen
- 5.4 Einen dynamischen Variablennamen erzeugen
- 5.5 Statische Variablen verwenden
- 5.6 Variablen in mehreren Prozessen gemeinsam verwenden
- 5.7 Komplexe Daten als String kapseln
- 5.8 Variableninhalte als Strings ausgeben
-
+
Kapitel 6: Funktionen
- 6.0 Einführung
- 6.1 Auf Funktionsparameter zugreifen
- 6.2 Vorgabewerte für Funktionsparameter festlegen
- 6.3 Werte als Referenzen übergeben
- 6.4 Benannte Parameter verwenden
- 6.5 Funktionen mit einer variablen Anzahl von Argumenten verwenden
- 6.6 Werte per Referenz zurückgeben
- 6.7 Mehr als einen Wert zurückgeben
- 6.8 Bestimmte Rückgabewerte überspringen
- 6.9 Fehlermeldungen zurückgeben
- 6.10 Variable Funktionen aufrufen
- 6.11 Innerhalb einer Funktion auf eine globale Variable zugreifen
- 6.12 Dynamische Funktionen erzeugen
- 6.13 Objekt-Datentypen für Funktionsparameter vorschreiben
-
+
Kapitel 7: Klassen und Objekte
- 7.0 Einführung
- 7.1 Objekte instantiieren
- 7.2 Objektkonstruktoren definieren
- 7.3 Destruktoren definieren
- 7.4 Zugriffskontrolle implementieren
- 7.5 Änderungen an Klassen und Methoden verhindern
- 7.6 String-Darstellungen für Objekte definieren
- 7.7 Interfaces definieren
- 7.8 Eine abstrakte Basisklasse definieren
- 7.9 Mit Namespaces Kollisionen zwischen Klassennamen verhindern
- 7.10 Namespace-Aliase - weniger Tipparbeit bei Verwendung von Namensräumen
- 7.11 Funktionen und Klassen aus dem globalen Namensraum verwenden
- 7.12 Objektreferenzen zuweisen
- 7.13 Objekte klonen
- 7.14 Callback-Funktionen mit einem Zustandsgedächtnis programmieren
- 7.15 Den Zugriff auf Eigenschaften abfangen
- 7.16 Methoden auf Objekten aufrufen, die von einer anderen Methode geliefert werden
- 7.17 Zusammengesetzte Klassen verschmelzen
- 7.18 Auf überschriebene Methoden zugreifen
- 7.19 Methodenpolymorphie einsetzen
- 7.20 Klassenkonstanten definieren
- 7.21 Statische Eigenschaften und Methoden definieren
- 7.22 Die Objektserialisierung steuern
- 7.23 Objektintrospektion
- 7.24 Prüfen, ob ein Objekt eine Instanz einer bestimmten Klasse ist
- 7.25 Klassendateien bei der Instantiierung von Objekten automatisch laden
- 7.26 Mehrere Autoload-Handler definieren
- 7.27 Objekte dynamisch instantiieren
- 7.28 Eine Anwendung: whereis
-
+
Kapitel 8: Effizienter Umgang mit Daten
- 8.0 Einführung
- 8.1 Über die Eigenschaften eines Objekts iterieren
- 8.2 Einfache Objekt-Iteration mit IteratorAggregate und ArrayObject
- 8.3 Einen eigenen Iterator implementieren
- 8.4 Einen eigenen Wrapper für Streams schreiben
- 8.5 Einen Stream filtern
- 8.6 Eigene Filter schreiben
- 8.7 Performancegewinn mit Arrays fester Größe erzielen
- 8.8 Standard-Datenstrukturen nicht neu erfinden - Queues, Stacks und Co.
-
+
Kapitel 9: Fehlerbehandlung mit Exceptions
- 9.0 Einführung
- 9.1 Fehlermeldungen vor Anwendern verbergen
- 9.2 Einstellungen zur Fehlerbehandlung vornehmen
- 9.3 Eine benutzerdefinierte Funktion zur Fehlerbehandlung verwenden
- 9.4 Fehler protokollieren
- 9.5 Debug-Informationen protokollieren
- 9.6 PHP-Fehler- und Warnmeldungen in Ausnahmen umwandeln
- 9.7 Ausnahmen abfangen
- 9.8 Eigene Ausnahmen werfen
- 9.9 Klassenabhängiges Exception-Handling
- 9.10 Vordefinierte Exception-Klassen für alle Lebenslagen
- 9.11 Ungefangene Exceptions zentral behandeln
- 9.12 Einen Stacktrace ausgeben
-
+
Kapitel 10: Web-Grundlagen
- 10.0 Einführung
- 10.1 Cookies setzen
- 10.2 Cookie-Werte lesen
- 10.3 Cookies löschen
- 10.4 Zu einer anderen Adresse umleiten
- 10.5 Sitzungen verfolgen
- 10.6 Sessions in einer Datenbank speichern
- 10.7 Verschiedene Browser erkennen
- 10.8 Einen GET-Query-String bilden
- 10.9 HTTP-Basic- oder -Digest-Authentifizierung einsetzen
- 10.10 Cookie-Authentifizierung verwenden
- 10.11 Ausgaben vorzeitig an den Browser senden
- 10.12 Ausgaben an den Browser zwischenspeichern
- 10.13 Web-Ausgaben mit gzip komprimieren
- 10.14 Den Fehler »headers already sent« vermeiden
- 10.15 Umgebungsvariablen lesen
- 10.16 Umgebungsvariablen setzen
- 10.17 Konfigurationsvariablen lesen
- 10.18 Konfigurationsvariablen setzen
- 10.19 Innerhalb von Apache kommunizieren
- 10.20 Code-Profile generieren
- 10.21 Geänderte Dateien herunterladen und unveränderte vom Browser cachen lassen
- 10.22 Programm: (De-)Aktivator für Website-Konten
- 10.23 Programm: Störungsprüfer
-
+
Kapitel 11: Formulare
- 11.0 Einführung
- 11.1 Formulareingaben verarbeiten
- 11.2 Formulareingaben prüfen
- 11.3 Mit mehrseitigen Formularen arbeiten
- 11.4 Formulare mit erhaltenen Informationen und Fehlermeldungen erneut anzeigen
- 11.5 Mehrfaches Absenden desselben Formulars verhindern
- 11.6 Hochgeladene Dateien verarbeiten
- 11.7 Die Formularverarbeitung durch PHP absichern
- 11.8 Steuerzeichen in Benutzerdaten durch Escape-Sequenzen ersetzen
- 11.9 Mit Formularvariablen arbeiten, deren Name einen Punkt enthält
- 11.10 Formularelemente mit Mehrfachoptionen verwenden
- 11.11 Drop-down-Menüs auf Basis des aktuellen Datums erzeugen
-
+
Kapitel 12: Datenbankzugriff
- 12.0 Einführung
- 12.1 Textdateien als Datenbanken verwenden
- 12.2 DBM-Datenbanken verwenden
- 12.3 Eine SQLite-Datenbank verwenden
- 12.4 Mit einer SQL-Datenbank verbinden
- 12.5 Eine SQL-Datenbank abfragen
- 12.6 Zeilen ohne eine Schleife abrufen
- 12.7 Daten in einer SQL-Datenbank modifizieren
- 12.8 Abfragen effizient wiederholen
- 12.9 Ermitteln, wie viele Zeilen eine Abfrage geliefert hat
- 12.10 Anführungszeichen maskieren
- 12.11 Debugging-Informationen und Fehler protokollieren
- 12.12 Eindeutige Identifikationsnummern erstellen
- 12.13 Abfragen dynamisch aufbauen
- 12.14 Paginierte Links für eine Gruppe von Datensätzen anzeigen
- 12.15 Ergebnisse und Abfragen cachen
- 12.16 An beliebiger Stelle eines Programms auf eine Datenbankverbindung zugreifen
- 12.17 Programm: Ein Thread-basiertes Forum
-
+
Kapitel 13: Web-Automatisierung
- 13.0 Einführung
- 13.1 Eine URL mit der GET-Methode abrufen
- 13.2 Eine URL mit der POST-Methode abrufen
- 13.3 Eine URL mit Cookies abrufen
- 13.4 Eine URL mit Headern abrufen
- 13.5 Eine URL über eine beliebige HTTP-Methode abrufen
- 13.6 URL-Anforderung mit Timeout
- 13.7 Eine HTTPS-URL abrufen
- 13.8 Den Datenaustausch auf HTTP-Ebene debuggen
- 13.9 Eine Webseite mit Markup versehen
- 13.10 Links aus einer HTML-Datei extrahieren
- 13.11 ASCII in HTML konvertieren
- 13.12 HTML in ASCII konvertieren
- 13.13 HTML- und PHP-Tags entfernen
- 13.14 Die Protokolldatei eines Webservers analysieren
- 13.15 Auf eine AJAX-Anfrage antworten
- 13.16 Zusammenarbeit mit JavaScript
- 13.17 Programm: Veraltete Links finden
- 13.18 Programm: Aktualisierte Links herausfinden
-
+
Kapitel 14: XML
- 14.0 Einführung
- 14.1 XML manuell generieren
- 14.2 XML mit DOM generieren
- 14.3 XML-Dokumente mit xmlWriter generieren
- 14.4 Komplexe XML-Dokumente einlesen (DOM)
- 14.5 Große XML-Dokumente einlesen (SAX)
- 14.6 XML mit SimpleXML parsen
- 14.7 Daten zwischen DOM und SimpleXML austauschen
- 14.8 Große XML-Dokumente einlesen (xmlReader)
- 14.9 XML mit XSLT transformieren
- 14.10 PHP-Funktionen in XSL-Stylesheets verwenden
- 14.11 Informationen aus einem XML-Dokument selektieren (XPath)
- 14.12 XML-Dokumente für Menschen lesbar machen
- 14.13 XML-Dokumente aus PHP-Datenstrukturen erzeugen
- 14.14 XML-Dokumente in PHP-Arrays oder Objekte einlesen
- 14.15 XML-Dokumente validieren
- 14.16 Die Inhaltskodierung steuern
- 14.17 XSLT-Parameter aus PHP setzen
-
+
Kapitel 15: Webservices
- 15.0 Einführung
- 15.1 XML-RPC-Anfragen senden
- 15.2 XML-RPC-Anfragen empfangen
- 15.3 XML-RPC-Anfragen mit der XMLRPCi-Erweiterung senden
- 15.4 SOAP-Anfragen mit einem WSDL-Dokument senden
- 15.5 SOAP-Anfragen ohne ein WSDL-Dokument senden
- 15.6 SOAP-Anfragen empfangen
- 15.7 RSS-Feeds lesen
- 15.8 REST-Anfragen senden
- 15.9 Daten mit WDDX austauschen
-
+
Kapitel 16: Reguläre Ausdrücke
- 16.0 Einführung
- 16.1 Von ereg zu preg wechseln
- 16.2 Wörter suchen
- 16.3 Den n-ten Match finden
- 16.4 Zwischen gierigem und nicht-gierigem Matching wählen
- 16.5 E-Mail-Adressen validieren
- 16.6 Alle zu einem Muster passenden Zeilen in einer Datei finden
- 16.7 Text innerhalb von HTML-Tags finden
- 16.8 In regulären Ausdrücken Sonderzeichen verwenden
- 16.9 Datensätze lesen, bei denen ein Muster als Separator dient
- 16.10 Verhindern, dass Klammern Text fangen
- 16.11 In einem regulären Ausdruck eine PHP-Funktion nutzen
-
+
Kapitel 17: Verschlüsselung und Sicherheit
- 17.0 Einführung
- 17.1 Passwörter aus den Dateien Ihrer Site heraushalten
- 17.2 Daten durch Kodierung verschleiern
- 17.3 Daten durch Prüfsummen verifizieren
- 17.4 Passwörter speichern
- 17.5 Überprüfung der Passwortsicherheit
- 17.6 Was tun bei verlorenen Passwörtern?
- 17.7 Daten ver- und entschlüsseln
- 17.8 Verschlüsselte Daten in einer Datei oder Datenbank speichern
- 17.9 Verschlüsselte Daten gemeinsam mit einer anderen Website nutzen
- 17.10 SSL ermitteln
- 17.11 E-Mail mit GPG verschlüsseln
- 17.12 Metazeichen der Shell mit Escape-Zeichen versehen
- 17.13 Session-Fixierung verhindern
- 17.14 Sich gegen Formular-Spoofing schützen
- 17.15 Sicherstellen, dass Eingaben gefiltert werden
- 17.16 Cross-Site-Scripting verhindern
- 17.17 SQL-Injection verhindern
-
+
Kapitel 18: Grafik
- 18.0 Einführung
- 18.1 Linien, Rechtecke und Vielecke zeichnen
- 18.2 Bogen, Ellipsen und Kreise zeichnen
- 18.3 Unterbrochene Linien zeichnen
- 18.4 Text zeichnen
- 18.5 Zentrierten Text zeichnen
- 18.6 Dynamische Bilder zusammensetzen
- 18.7 Eine transparente Farbe ermitteln und einstellen
- 18.8 Programm: Heraufgeladene Digitalfotos auf Webformat verkleinern
- 18.9 Grafiken geschützt ausgeben
- 18.10 Programm: Aus Umfrageergebnissen Balkendiagramme erstellen
-
+
Kapitel 19: Internationalisierung und Lokalisierung
- 19.0 Einführung
- 19.1 Vorhandene Locales auflisten
- 19.2 Ein bestimmtes Locale verwenden
- 19.3 Das Default-Locale setzen
- 19.4 Textmeldungen lokalisieren
- 19.5 Datum und Uhrzeiten lokalisieren
- 19.6 Lokalisierung von Währungen
- 19.7 Bilder lokalisieren
- 19.8 Eingebundene Dateien lokalisieren
- 19.9 Lokalisierungsressourcen verwalten
- 19.10 gettext verwenden
- 19.11 Unicode-Zeichen lesen und ausgeben
- 19.12 Die Zeichenkodierung ausgehender Daten setzen
- 19.13 Die Zeichenkodierung eingehender Daten setzen
-
+
Kapitel 20: Internetdienste
- 20.0 Einführung
- 20.1 E-Mails senden
- 20.2 MIME-Mail senden
- 20.3 E-Mail mit IMAP oder POP3 lesen
- 20.4 Nachrichten an Usenet-Newsgruppen senden
- 20.5 Usenet-Nachrichten lesen
- 20.6 Dateien mit FTP herauf- und herunterladen
- 20.7 Adressen über LDAP abfragen
- 20.8 LDAP zur Benutzer-Authentifizierung verwenden
- 20.9 DNS-Lookups ausführen
- 20.10 Überprüfen, ob ein Host erreichbar ist
- 20.11 Informationen über einen Domainnamen herausfinden
-
+
Kapitel 21: Dateien
- 21.0 Einführung
- 21.1 Eine lokale Datei erstellen oder öffnen
- 21.2 Eine temporäre Datei erstellen
- 21.3 Eine Datei auf einem entfernten Server öffnen
- 21.4 Eine Datei in einen String einlesen
- 21.5 Einen String in eine Datei schreiben
- 21.6 Die Zeilen, Absätze oder Datensätze in einer Datei zählen
- 21.7 Jedes Wort einer Datei verarbeiten
- 21.8 Eine bestimmte Zeile einer Datei einlesen
- 21.9 Eine Datei zeilen- oder absatzweise in rückwärtiger Reihenfolge bearbeiten
- 21.10 Eine Zeile per Zufall aus einer Datei auswählen
- 21.11 Alle Zeilen einer Datei in eine Zufallsreihenfolge bringen
- 21.12 Textfelder variabler Länge verarbeiten
- 21.13 Konfigurationsdateien einlesen
- 21.14 Von einer bestimmten Stelle einer Datei lesen oder an eine bestimmte Stelle einer Datei schreiben
- 21.15 Die letzte Zeile einer Datei entfernen
- 21.16 Eine Datei an ihrem Platz ohne eine temporäre Datei ändern
- 21.17 Gepufferte Ausgabedaten in eine Datei schreiben
- 21.18 An viele Datei-Handles gleichzeitig schreiben
- 21.19 Einem Programm Eingabedaten durchgeben
- 21.20 Die Standardausgabe eines Programms lesen
- 21.21 Den Standardfehlerkanal eines Programms einlesen
- 21.22 Eine Datei sperren
- 21.23 Komprimierte Dateien lesen und schreiben
- 21.24 Programm: Unzip
-
+
Kapitel 22: Verzeichnisse
- 22.0 Einführung
- 22.1 Zeitstempel auslesen und setzen
- 22.2 Auf Dateiinformationen zugreifen
- 22.3 Dateiberechtigungen oder Dateieigentümerschaft ändern
- 22.4 Einen Dateinamen in seine Bestandteile zerlegen
- 22.5 Eine Datei löschen
- 22.6 Eine Datei kopieren oder verschieben bzw. umbenennen
- 22.7 Alle Dateien in einem Verzeichnis verarbeiten
- 22.8 Alle Dateinamen finden, die einem Muster entsprechen
- 22.9 Alle Dateien in einem Verzeichnis rekursiv verarbeiten
- 22.10 Dateien eines Verzeichnisses filtern
- 22.11 Neue Verzeichnisse erstellen
- 22.12 Ein Verzeichnis und seinen Inhalt entfernen
- 22.13 Programm: Eine Auflistung des Webserver-Verzeichnisses erstellen
- 22.14 Programm: Site-Suche
-
+
Kapitel 23: PHP auf der Kommandozeile
- 23.0 Einführung
- 23.1 Programmparameter parsen
- 23.2 Programmparameter mit Console_Getopt oder Console_Getargs parsen
- 23.3 Von der Tastatur lesen
- 23.4 Passwörter einlesen
- 23.5 Die Ausgabe eines Kommandozeilen-Befehls weiterverarbeiten
- 23.6 Dateien zeilenweise verarbeiten
- 23.7 Prozesse forken
- 23.8 Einen Server programmieren
-
+
Kapitel 24 : PEAR und PHAR
- 24.0 Einführung
- 24.1 PEAR installieren
- 24.2 Den PEAR Package Manager verwenden
- 24.3 PEAR-Pakete installieren und deinstallieren
- 24.4 PEAR-Pakete upgraden
- 24.5 PECL-Pakete installieren
- 24.6 Pakete aus anderen Channels installieren
- 24.7 PEAR in Shared-Hosting-Umgebungen installieren
- 24.8 Eigene PEAR-Pakete erstellen
- 24.9 Eigene Pakete über einen Channel-Server vertreiben
- 24.10 Ein PHP-Archiv (PHAR) erstellen
- 24.11 Auf Inhalte in einem PHP-Archiv (PHAR) zugreifen
- 24.12 Ein PHP-Archiv (PHAR) direkt ausführen
- Index
Für jede kniffelige Aufgabe gibt es eine Lösung und die ist oft viel einfacher, als zunächst gedacht. Das beliebte PHP 5 Kochbuch zeigt Ihnen, wie Sie typische Probleme und Herausforderungen der PHP Entwicklung geschickt meistern. Die Rezepte reichen von ...
Your free to read time expires in minutes. After that you have to pause for an hour.
Test the closed alpha on paperc.com
Book Details
Authors
David Sklar, Adam Trachtenberg, Carsten Lucke, Matthias Brusdeylins, Ulrich Speidel, and Stephan Schmidt
Categories
Publishers
Publication year : 2009
License: All rights reserved ©
Times read: 4,121

