Wie man eine Funktionsdefinition (Prototyp) liest

Jede Funktion im Handbuch ist für schnelles Nachschlagen dokumentiert. Zu wissen, wie man diesen Text liest und versteht, wird es viel einfacher machen, PHP zu lernen. Statt sich auf Beispiele und Auschneiden und Einfügen zu verlassen sollte jeder wissen, wie man eine Funktionsdefinition (Prototyp) liest. Lassen Sie uns anfangen:

Hinweis: Voraussetzung: Grundlegendes Verständnis der Typen

Obwohl PHP eine schwach typisierte Sprache ist, ist es wichtig, ein grundlegendes Verständnis von Typen zu besitzen, da sie eine wichtige Bedeutung haben.

Funktionsdefinitionen sagen uns, welcher Typ von Werten zurückgegeben wird. Lassen Sie uns die Definition von strlen() als unser erstes Beispiel nehmen:

strlen

(PHP 4, PHP 5)
strlen -- Ermitteln der String-Länge

Beschreibung
int strlen ( string $string )

Gibt die Länge der übergebenen Zeichenkette zurück.

Erklärung einer Funktionsdefinition
Teil Beschreibung
strlen Der Name der Funktion.
(PHP 4, PHP 5) strlen() gab es in allen Versionen von PHP 4 und PHP 5
int Type des Wertes, den diese Funktion zurückgibt, welche hier ein integer ist (d.h. die Länge einer Zeichenkette in Zahlen gemessen).
( string $string ) Der erste (und in diesem Fall einzige) Parameter (Argument) dieser Funktion trägt den Namen string und ist ein String.

Wir könnten die oben angegebene Funktionsdefinition auf eine allgemeine Art umschreiben:

      Rückgabetyp    Funktionsname    ( Parametertyp   Parametername )

Viele Funktionen akzeptieren mehrere Parameter, z.B. in_array(). Ihr Prototyp sieht wie folgt aus:

      bool in_array ( mixed $needle, array $haystack [, bool $strict = FALSE])

Was bedeutet das? in_array() liefert einen boolean Wert zurück, TRUE im Erfolgsfall (falls needle in haystack gefunden wurde)Im Fehlerfall wird FALSE zurückgegeben. (falls needle nicht in haystack gefunden wurde). Der erste Parameter heißt needle und kann viele verschiedene Typen annehmen, weshalb wir ihn "mixed" nennen. Diese mixed needle (wonach wir suchen) kann entweder ein skalarer Wert sein (string, integer oder float) oder ein array. haystack (das Array das wir durchsuchen) ist der zweite Parameter. Der dritte, optionale Parameter wird strict genannt. Alle optionalen Parameter werden in [ Klammern ] dargestellt. Das Handbuch erklärt, dass der Parameter strict den Standardwert FALSE hat. Schauen Sie auf die Handbuchseite der jeweiligen Funktion, um nachzulesen, wie sie funktionieren.

Zusätzlich erlaubt das & (Kaufmanns-Und) Symbol, das einem Funktionsparameter vorangestellt wird, den Parameter als Referenz zu übergeben, wie hier zu sehen:

       int preg_match ( string $pattern , string $subject [, array &$matches
      [, int $flags = 0 [, int $offset = 0 ]]] )

Diesem Beispiel kann entnommen werden, dass der dritte optionale Parameter &$matches als Referenz übergeben wird.

Es gibt auch Funktionen mit komplexeren PHP Versionsangaben. Nehmen wir html_entity_decode() als Beispiel:

(PHP 4 >= 4.3.0, PHP 5)

Das heißt die Funktion ist nur in PHP Versionen ab PHP 4.3.0 verfügbar.