Teil von  SELFPHP  Teil von Editorial
Professional CronJob-Service

Suche

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.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

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen

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.

 




:: Premium-Partner ::

Webhosting/Serverlösungen

Pixel X weitere Premium-Partner
 

:: SELFPHP Sponsor ::

ionCube Ltd. weitere Sponsoren
 


:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Webhosting/Serverlösungen

Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?

Sie sind nur ein paar Klicks davon entfernt!


 

Ausgewählter Tipp im Bereich PHP-Skripte


Tage eines Monats ermitteln

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Datenbank-Traffic seit dessen Start ermitteln

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt