Quakenet/#php Tutorial

Hinweis: Wenn sie diese Seite von einer externen URL aufgerufen haben achten sie darauf das alle Kapitel aufeinander aufbauen. Stellen sie daher sicher dass sie alle vorherigen Kapitel gelesen haben, da sie sonst relevante Informationen übersehen.

Aufbau des PHP-Handbuchs

  1. Das PHP-Handbuch (Manual)
  2. Finden einer Funktionsbeschreibung
  3. Lesen und Verstehen einer Funktionsbeschreibung
  4. Funktionsbeschreibung zu sort

1. Das PHP-Handbuch (Manual)

Auf der offiziellen Homepage von PHP befindet sich neben den Quellcodes und Downloads zu PHP auch das Handbuch zu PHP. Neben den Grundlegenden Themen zum Skriptaufbau und Sicherheit besteht das Handbuch hauptsächlich aus einer Liste von Funktionen und Klassen die in PHP (je nach Installation) bereit stehen. Diese Funktionen sind dabei noch in Gruppen unterteilt. So gibt es z.B. Funktionsgruppen zu String und MySQL.

2. Finden einer Funktionsbeschreibung

Trotz der Tatsache das im Handbuch eine Liste der Funktionsbeschreibungen vorhanden ist muss zuerst die passende Funktion gefunden werden. Als erstes sollte man in der Funktionsreferenz nachgucken, insbesondere in den Funktionsgruppen. Eine Funktion die ein Array sortieren soll wird wohl in der Gruppe Arrays zu finden sein, eine Funktion um Texte in einem String zu ändern wohl in der Gruppe Strings. In einer solchen Gruppen finden sich neben allgemeinen Informationen wie Installation, Einstellungen und Beispielen (zu diesen Gruppen) auch eine Liste der Funktionen die zu dieser Gruppe gehören und ein Kurztext was diese leisten. So würde man in der Gruppe Arrays die Funktion sort finden mit der Beschreibung Sort an array. Ein Klick auf den Link bringt einen zu der entsprechenden Funktionsbeschreibung.

Die für den Programmierer einfachere Lösung (aber für Helfer und Forum-Moderatoren nervigere Lösung) wäre einfach eine entsprechende Frage zu stellen wie eine solche Funktion in PHP heißt.

<user> ich hab ein Problem, ich hab mit php nun ein array
       erstellt, jedoch sind die werte total unsortiert, wie sortiere ich die?
<helfer> sort
<helfer2> mit usort
<helfer3> du kennst www.php.net?
<helfer4> probier mal sort()
You have been kicked from #helpchannel by operator3 (sort(), und nächste mal das handbuch auf www.php.net/manual lesen)
        

In den meisten Fällen handelt es sich um ein Funktionsname. Nun kann im Handbuch die entsprechenden Funktionsbeschreibung aufgerufen werden. Dazu gibt es mehrere Möglichkeiten.

  1. Auf der Homepage gelankt man mit dem Link documentation oben im Menu in das Handbuch. Obwohl das Handbuch in mehreren Sprachen verfügbar ist sollte stehts English verwendet werden, da die englische Version immer stehts die aktuelle Funktionsbeschreibung enthält. In der englischen Version befindet sich die Funktionsgruppen in einem Unterpunkt namens Function Reference. Da die zu suchende Funktion wohl zu Arrays gehören klickt man auf Arrays. Ganz unten in der Gruppenbeschreibung findet sich eine sortierte Liste von den Funktionen in dieser Gruppe. Dort findet sich entsprechend auch ein Eintrag zu sort mit der Kurzbeschreibung Sort an array. Mit einem Klick gelangt man zu der entsprechenden Funktionsbeschreibung.

  2. Auf der Homepage befindet sich oben rechts ein Eingabefeld für die Suche auf der Homepage. Standardmäßig wird nur in der Funktionsreferenz gesucht, kann jedoch entsprechend geändert werden wenn man weiß wo man suchen möchte. Dort kann der Name der Funktion eingegeben und durch die Suche gelangt man zu der entsprechenden Funktionsbeschreibung. Wenn die Suche keinen Treffer ergab so gibt sie wenigstens eine Liste von Funktionen aus, die so ähnlich klingen. Somit kann auch eine Funktion gefunden deren Namen vielleicht erst falsch geschrieben wurde.

  3. Am einfachsten ist der Aufruf der URL http://www.php.net/FUNKTIONSNAME wobei FUNKTIONSNAME die Funktion ist, von der man die Funktionsbeschreibung haben möchte. So ein Aufruf der URL ruft automatisch die Suche der Homepage auf und in den meisten Fällen gelangt man so zu der entsprechenden Funktionsbeschreibung.

3. Lesen und Verstehen einer Funktionsbeschreibung

Obwohl es einfacher ist eine Funktionsbeschreibung in der Muttersprache zu lesen ist es sinnvoller die Sprache einer Funktionsbeschreibung auf English zu stellen. Dazu befindet sich in der Dropdown-Liste oberhalb der aktuellen Funktionsbeschreibung der Eintrag English mit der entsprechend die Sprache umgestellt werden kann.

Nach dem Namen der Funktionsbeschreibung ist eine Angabe ab welche Versionen diese Funktion in PHP implementiert wurde und danach die Kurzbeschreibung der Funktion.

Darauf folgt die eigenliche Funktionsbeschreibung. Diese Beginnt mit dem Funktionskopf. Dieser besteht aus den Angaben Rückgabewert, Name der Funktion und Parameterliste. Der Rückgabewert gibt entsprechend den Typ an den die Funktion zurückliefert. Die Angaben void bedeutet dass die Funktion nichts zurückliefert. Die Parameterliste gibt an welche Parameter die Funktion unterstützt. Jeder Parameter ist dabei in der Form type $name oder type &$name. Der Typ gibt an welchen Typ der Parameter haben sollte bzw. muss. Dabei gibt es einige spezialtypen die in PHP nicht als solche existieren und nur in der Dokumentation verwendet werden. So steht der Typ number für eine float- oder int-Zahl. Eine Liste dieser Pseudotypen ist im Handbuch unter Pseudo-types and variables used in this documentation zu finden. Nach dem Typ steht der Name des Parameters. Dieser Name wird auch in der Funktionsbeschreibung verwendet. Wenn vor dem Namen ein & handelt sich bei diesem Parameter um ein Parameter mit Referenz. Dabei muss einmal der Parameter eine Variable sein und des Weiteren verändert die Funktion den Inhalt dieser Variable. Dies unterscheidet sich daher von Funktionsaufrufen ohne dem & die nur eine Kopie des Wertes übergeben. Des Weiteren können Parameter in eckigen Klammern stehen. Damit wird angegeben dass dieser Parameter optional ist und weggelassen werden kann.

Nach dem Funktionskopf folgt die genaue Beschreibung der Funktion und der Parameter. Dabei greift sie auf die Namen der Parameter zu. Die Parameternamen stehen dabei in einer monospace-kursiven Schrift um sie vom Fließtext zu unterscheiden. Daher ist der Satz If search or replace are arrays, [...] als solches Schwachsinnig, ergibt jedoch Sinn wenn man weiß dass search und replace die Namen der Parameter sind. Die genaue Funktionsbeschreibung enthält zusätzlich einige Beispiel wie eine Funktion verwendet wird sowie eine Auflistung aller Parameter und deren Funktionsweisen.

Der Rückgabewert einer Funktion wird extra aufgelistet und enthält eine Beschreibung über den Rückgabewert. Bei einer Funktion mit Rückgabetyp void wird dieser entsprechend weggelassen, bei einem Rückgabetyp mixed kann hier jedoch eine Menge Text stehen um alle Fälle der Funktion abzudecken.

Da auch PHP stehts in der Entwicklung ist enthalten einige Funktionen einen kurzen Hinweis was sich in welcher PHP-Version an dieser Funktion getan hat. So sind z.B. einige Parameter erst ab einer bestimmten PHP-Version implementiert worden.

Die meisten Funktionen enthalten zusätzlich Querverweise zu anderen Funktionen, die einen Bezug zu der aktuellen Funktion haben. So kann es sein dass eine Funktion nicht das macht was man möchte, jedoch vielleicht so die richtige Funktion findet wenn man einen Querverweis öffnet.

Abschließend enthalten alle Funktionen einen Bereich von Userkommentaren. Sie erläutern nochmal einige Funktionshinweise und bieten auch Beispielcodes an, wie diese Funktion zu verwenden ist. In den Kommentare sind auch eigene Funktionsdefinitionen zu finden die vielleicht für andere Programmierer interessant sind.

4. Funktionsbeschreibung zu sort

Als Beispiel wählen wir die Funktionsbeschreibung zu sort. Diese Funktion ist in den PHP Versionen php4 und php5 vorhanden und anhand der Kurzbeschreibung ist zu erkennen dass mit dieser Funktion ein Array sortiert werden kann.

Der Funktionskopf beschreibt dass die Funktion einen boolischen Wert zurückliefert, der erste Parameter eine Variable mit einem Array sein muss und der zweite Parameter optional eine Integer-Zahl sein kann. Unabhängig was diese Funktion genau macht kann die Funktion wie folgt aufgerufen werden.

<?php
$a 
= array(4610, -4);
$ret sort($a);
$ret sort($a4);
$ret sort($a0);
sort($a, -400);
sort($a9*30-5);
sort($a$a[0]); // möglich da $a[0] den Wert int(4) hat
?>

Die Funktionsbeschreibung enthält dann ein Text was diese Funktion leistet. In diesem Fall wird das angegeben Array aufsteigend sortiert. Des Weiteren beschreibt sie den Rückgabewert, der true ist wenn das Array sortiert wurde und false ist wenn ein Fehler auftrat.

Obwohl der optionale Parameter von der Syntax her jede beliebige Integer-Zahl erwarten kann ergeben nur einige Integerwerte Sinn. So steht in der Beschreibung dass man die Werte SORT_REGULAR, SORT_NUMERIC, SORT_STRING und SORT_LOCALE_STRING verwenden kann um die entsprechende Funktionalität zu haben die in der Beschreibung angegeben ist. Auf den ersten Blick würde man meinen dass es sich hierbei um Strings handelt und die Funktion vielleicht mit sort($a, "SORT_NUMERIC"); aufruft. Dagegen spricht jedoch einmal die Tatsache dass der 2. Parameter eine Zahl sein soll, kein String. Des Weiteren deutet die Großschreibweise an dass es sich hierbei um Konstanten handelt. Wenn man in der Gruppenübersicht nachguckt findet man dort auch in der Liste der definierten Konstanten auch die angegebenen Konstanten. Also kann man diese Konstanten für diese Funktion verwenden.

<?php
sort
($aSORT_STRING);
sort($aSORT_NUMERIC);
?>

Als Querverweise enthält die Funktionsbeschreibung eine Auflistung anderer Sortierfunktionen. Und zum Schluss sind die Userkommentare zu dieser Funktion zu finden.

Fragen zum Kapitel

Keine Fragen zum Kapitel vorhanden

Zurück zu Weiter zu
Copyright © bei den OPs von #php.de/QuakeNet Valid XHTML 1.0 Strict Valid CSS!