Teil von  SELFPHP
Letztes Update: 29.09.2007 10:18:59

Navigation

Seite Startseite
Seite Aktuelles
Seite Seite News*
Seite Seite Pressemitteilungen*
Seite SELFPHP
Seite Seite Über SELFPHP
Seite Seite Werbung
Seite Seite Kontakt
Seite Seite Unsere Banner
Seite Seite Impressum
Seite Qozido
Seite Seite Diving Edition
Seite Seite Snorkeling Edition
Seite SELFPHP Dokumentation
Seite Seite PHP-Skripte
Seite Seite PHP Befehlsreferenz
Seite Seite PHP 5 Praxisbuch
Seite Seite PHP Code Snippets
Seite Seite SELFPHP in Buchform
Seite Anbieterverzeichnis
Seite Seite Globale Branchen
Seite Seite Webhosting/Server
Seite Services
Seite Seite Forum*
Seite Seite RSS-Feeds*
Seite Seite Downloads*
Seite Seite Gratis-Video-Lektionen*
Seite Seite SELFPHP auf Heft-CD*
Seite Seite Newsletter*
Seite Internet Security
 sponsored by  
Seite Stellenangebote*
Sedo - Bei uns wird PHP großgeschrieben
Seite Premium-Partner   
Webhosting/Serverlösungen
Seite Produktempfehlung   
Seite Seite SteadyBackup

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  
 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 100.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 




 

Hinweise zur Benutzung des Buches: SELFPHP - Das PHP Kochbuch


Zielgruppe

Sie sind interessiert daran, Ihre bisherigen Kenntnisse in PHP zu vertiefen? Sie stoßen öfter auf Problemsituationen in der Umsetzung bei der PHP-Programmierung? Sie würden gerne schlanke und effiziente Lösungen für gewisse Aufgaben programmieren, aber der Ansatz dazu fehlt Ihnen? Sie sind Anfänger bis Profi in PHP?

Wenn Sie auch nur eine der Fragen mit einem »Ja« beantworten konnten, so sind Sie für dieses Buch der ideale Adressat.

Im Buch selbst werden eine Vielzahl von PHP-Problemstellungen erklärt und mit Beispielen sowie den passenden Ausgaben unterlegt. Damit Sie alle Beispiele bequem ausprobieren können, finden Sie jeweils am Ende eines Beispiels alle PHP-Dateien, Bilder, Textdateien sowie Datenbanken. Probieren Sie ruhig alle Beispiele aus, und modifizieren Sie den Quellcode nach Ihren Bedürfnissen.

Sicherlich hätte man die Beispiele auch wesentlich kompakter programmieren können. Manche Beispiele bieten sich regelrecht an, aus Ihnen Klassen zu machen. Der Autor will aber nicht zeigen, wie toll man programmieren könnte, sondern gerade unerfahrenen Programmierern den Weg zum Ziel weisen. Sie selbst können und sollten die Beispiele modifizieren und anpassen – nur so werden Sie ein Gefühl für die Programmierung und die Lösungswege bekommen.

Dieses Buch wartet nicht mit ein paar hundert Beispielen in ebenso vielen Kapiteln auf, sondern zeigt gezielt Lösungen für immer wiederkehrende Fragen. Wir haben bewusst darauf verzichtet, Ihnen hier Beispiele zu zeigen, die bereits mit einer Zeile Programmcode erledigt werden könnten.

Falls Sie dennoch eine Lösung suchen, finden Sie hier auf SELFPHP die Befehlsreferenz und das Praxisbuch von SELFPHP. Beides zusammen umfasst ca. 1150 Buchseiten und sollte eigentlich jedes Problem lösen können.

 



Themenumfang

Der Themenumfang des Buches SELFPHP - Das PHP Kochbuch gliedert sich in folgende Hauptkapitel:

  • Zum Buch
  • Datumsberechnungen
  • Formulare
  • Variablenüberprüfung/Reguläre Ausdrücke
  • Webseitenlayout
  • Dateien
  • Verzeichnisse
  • Komprimieren/Archivieren/Backups
  • Dies & Das
  • CURL – Die Verbindung zur Außenwelt
  • PHP & Shell
  • Verschlüsselung/Prüfsummen

Sämtliche Skripte (Listings) in diesem Buch wurden sorgfältig ausgearbeitet und getestet. Dabei wurden als Systeme ein Linuxund Windows-XP-Rechner genutzt, welche innerhalb eines Netzwerks miteinander verbunden waren. Alle Skripte wurden über den WindowsRechner per Browser gestartet. Die Skripte wurden auf dem Webserver ausgeführt und unterschieden sich nur durch die Dateiendung (*.php oder *.php5). Somit wurde entweder PHP4 oder PHP5 ausgeführt.

System:

  • Linux/x86
  • Apache Webserver 1.3.33
  • PHP 4.4.2 – ServerAPI: Apache
  • PHP 5.1.2 – ServerAPI: CGI
  • MySQL 4.0.25

Sollten Sie dennoch Beispielskripte finden, die nicht einwandfrei funktionieren oder verbesserungsfähig sind, würde es mich sehr freuen, wenn Sie mich per E-Mail darüber informieren. Bitte schreiben Sie das Verhalten der Skripte, Ihre Serverausstattung und die darauf laufende Software mit dazu.

Beispiel:

Beispiel: MySQL-Backup über die Shell
Datei: backupDB.php
Fehlermeldung: Fatal error: Call to undefined function: glob () in /www/users/ test_php/getimagesize.php on line 2
System: Linux SuSE 10.1
Server: Apache Webserver 1.3.20
PHP: PHP 4.3.0 als Modul einkompiliert
Datenbank: MySQL 3.22.32
Eventuelle Verbesserungen:

Für die Korrespondenz steht Ihnen folgende E-MailAdresse zur Verfügung:
kochbuch@selfphp.de

 



Schreibweise/Parametererklärung bei Funktionsaufrufen

Sie werden im Buch immer wieder auf Funktionen stoßen, die als Parameter gewisse Werte erwarten und als Rückgabewert gewisse Typen (bool, string, array etc.) liefern. Damit Sie wissen, was Sie der Funktion übergeben müssen und was Sie zurückerhalten, werden über den Funktionen immer die Parameter beschrieben.

Somit sind Sie in der Lage, anhand dieser Beschreibung den Aufbau der Funktion zu erkennen – Sie müssen also nicht erraten, was an Werten benötigt wird. Es kann bei manchen Funktionen dazu kommen, dass im Buch umgebrochen wird, sich also der Funktionsinhalt auf zwei Zeilen befindet. Anhand der Zahlen in der linken Spalte sehen Sie aber, dass es sich um eine Zeile handelt, die zusammengeschrieben werden muss.

Beispiel einer Funktion

01:

02:
03:
04:
05:
06:
07:
08:
09
function scan_dir($dir, $type=array(), $allFiles=FALSE, $recursive=TRUE,
$nextrow, $onlyDir="")
{
// Hier steht irgendein Programmcode
// Hier steht irgendein Programmcode
// Hier steht irgendein Programmcode
// Hier steht irgendein Programmcode
// Hier steht irgendein Programmcode
}
scan_dir("Bilder/",$fileTyp,TRUE,FALSE,TRUE);


Wenn Sie sich die Funktion genauer betrachten, dann wird sie Ihnen erst einmal nicht viel sagen. Sie werden allenfalls aus den Parametern gewisse Hinweise beziehen können. Jetzt müssten Sie sich den Quellcode in der Funktion anschauen, um sehen zu können, was für Typen jeweils benötigt werden. Das mag zwar bei kleineren Funktionen relativ schnell gehen, aber denken Sie einmal weiter und stellen Sie sich große Funktionsblöcke vor.

Die Typen dann herauszufinden, kann schnell sehr zeitraubend sein. Gewöhnen Sie sich am besten immer an, jeweils einen Kommentarblock über die Funktion zu schreiben und die Parameterwerte sowie den Rückgabewert zu deklarieren.

Auch eine kurze Beschreibung zu der Funktion selbst ist immer recht hilfreich und erspart Ihnen in Zukunft eine Menge Einarbeitungszeit, denn wenn Sie z. B. nach einem Jahr mal wieder an den Quellcode heran müssen, haben Sie in der Regel vieles vergessen. Dann hilft Ihnen diese Gedankenstütze bei den Funktionsblöcken.

Nachfolgend sehen Sie ein Beispiel für einen solchen Kommentarblock. Die einzelnen Werte sowie Parameter schauen wir uns nach dem Beispiel etwas genauer an.

01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
/**
* Durchläuft bei Bedarf rekursiv das zu durchsuchende Verzeichnis
*
* @param   string  $dir        Pfad zum Verzeichnis
* @param   array   $type       aufzulistende Bildtypen
* @param   bool    $allFiles   Listet alle Dateien in den
*                              Verzeichnissen auf ohne Rücksicht
*                              auf $type
*                              Default:FALSE
* @param   bool    $recursive  Durchläuft rekursiv alle
*                              Verzeichnisse und
*                              Unterverzeichnisse
*                              Default:TRUE
* @param   string  $nextrow    Enthält den Verzeichnisnamen für die
*                              Überschrift über den Bildernamen
* @param   string  $onlyDir="" Enthält als Verweis(Referenz) den
*                              Inhalt der Verzeichnisstruktur
*
* @return  mixed               false im Fehlerfall, ansonsten ein
*                              Array mit allen Dateinamen
*/



Am Anfang des Kommentarblocks steht ein Einzeiler, der beschreibt, was die Funktion macht. In diesem Fall ist dies völlig ausreichend, da der Satz so mehr als aussagekräftig ist. Sie sollten immer so viel schreiben, wie nötig ist, um die Funktion zu verstehen.

Interessant wird es jetzt bei den folgenden Aufzählungen. Wie Sie sehen, besteht jede Zeile aus vier Bereichen, außer wenn eine Zeile umbricht, wie z. B. bei „Listet alle Dateien in den Verzeichnissen auf“.

  • @param: Im ersten Bereich steht hier in unserem Fall @param – dies sagt uns, dass es sich um einen Parameter handelt, der innerhalb der Funktion benötigt wird.
  • Typen (string, array, int, bool etc.): Im zweiten Bereich steht jeweils der Typ des Parameters. Folgende Werte könnten z. B. dort auftauchen:

    1. array – es wird ein Array als Parameter benötigt.
    2. double – als Parameter wird eine Fließkommazahl gefordert.
    3. float – als Parameter wird eine Fließkommazahl gefordert.
    4. int – als Parameter wird eine Ganzzahl gefordert.
    5. string – als Parameter wird eine Zeichenkette gefordert.
    6. bool – als Parameterwert wird »true« oder »false« erwartet.
    7. resource – als Parameter wird eine Referenz auf eine externe Ressource gefordert.
    8. object – als Parameter wird ein Objekt benötigt.
  • Parameternamen: Hier steht lediglich der zu beschreibende Parametername.
  • Text: Der letzte Block erklärt kurz, wofür der Parameter benutzt wird und ob er eventuell schon mit Werten vorbelegt ist.

Sie sehen in der letzten Zeile einen Ausdruck, der noch nicht erklärt wurde. Dabei handelt es sich um den Rückgabewert der Funktion.

  • @return: Dabei handelt es sich um den Rückgabewert der Funktion. Folgende Typen werden z. B. zurückgegeben:
    1. array – es wird ein Array zurückgegeben.
    2. double – eine Fließkommazahl wird zurückgegeben.
    3. float – eine Fließkommazahl wird zurückgegeben.
    4. int – eine Ganzzahl wird zurückgegeben.
    5. string – eine Zeichenkette wird zurückgegeben.
    6. bool – als Wert wird »true« oder »false« zurückgegeben.
    7. object – ein Objekt wird zurückgegeben.
    8. void – die Funktion gibt nichts zurück.
    9. mixed – je nach Funktionsabarbeitung kann es dazu kommen, dass verschiedene Typen zurückgegeben werden können. Falls z. B. ein Fehler auftreten sollte, kann hier »false« zurückgeliefert werden. Im Erfolgsfall wird die Funktion aber ein Array liefern oder vielleicht einen String. Je nachdem, was Sie bezwecken wollen, kann hier der Typ variabel sein.
 




 sponsored by

Sedo - Bei uns wird PHP großgeschrieben


VERIO - An NTT Communications Company


HighText iBusiness


Webspace-Verkauf.de


video2brain




 Premium-Partner
 Webhosting/Serverlösungen

BPI-Systeme


Premium-Partner Pixel X


Premium-Partner First Colo


Premium-Partner dogado Internet




Qozido


© 2001-2008 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt