Bei der Schreibweise von Bezeichnern für Variablen, Konstanten, Funktionen, Klassen und Methoden
müssen einige Regeln beachtet werden. Die Beachtung von darüber hinausgehenden Hinweisen, welche die Notation betreffen, ist
eher freiwillig und dient mehr oder weniger nur der besseren Lesbarkeit des Codes.
Für alle Bezeichner gilt, dass ein gültiger Name bzw. Bezeichner nur mit einem Buchstaben oder Unterstrich beginnen darf, dem
weitere Buchstaben, Unterstriche oder Ziffern folgen. Weiterhin dürfen keine von PHP bereits reservierten Worte als Bezeichner
für Konstanten, Funktionen, Klassen und Methoden verwendet werden. Als Bezeichner für Variablen ist die Benutzung von
reservierten Worten zwar möglich, um einer Verwechslungsgefahr vorzubeugen, sollten diese dann jedoch nur in einer eindeutigen
kombinierten Schreibweise verwendet werden, um die Verwechslungsgefahr zu minimieren.
Bei Variablen kommt hinzu, dass den Bezeichnern ein Dollar-Zeichen vorangestellt werden muss. Somit gesehen beginnen die
Bezeichner von Variablen eigentlich mit einem Dollar-Zeichen, denen der Name der Variablen folgt. In diesem Zusammenhang müsste
jedoch definiert werden, ob Bezeichner nicht gleich Name ist oder ob Bezeichner gleich Name ist, dem bei Variablen nur ein
Dollar-Zeichen vorangestellt wird. Doch das würde in Haarspalterei enden, wichtiger ist hingegen die Beachtung von Groß- und
Kleinschreibung bei Bezeichnern.
Zur Groß- und Kleinschreibung von Bezeichnern wäre zu bemerken, dass PHP nur bei Namen von Variablen, Konstanten und bei den
Eigenschaften von Klassen case sensitive reagiert. Bei Funktionen, Klassen und Methoden hingen unterscheidet PHP nicht zwischen
Groß- und Kleinschreibung (case insensitive). Als Demo und zur besseren Veranschaulichung soll eine Beispielklasse
dienen:
Beispiel 1: Die Bezeichner von Funktionen, Klassen und Methoden wertet PHP case insensitive
aus.
<?php class DerMensch { private $tutwas = "denkt"; private $ueber = "Unfug"; private $antwort = "-"; public function beantworteFrage() { $this->antwort = "Der Mensch ".$this->tutwas. " zuweilen über ".$this->ueber." nach.\n"; return $this->antwort; } } echo "Frage: Was tut der Mensch zuweilen?<br>"; $ausgabe = new DerMensch(); echo "Antwort: ".$ausgabe->beantworteFrage(); ?>
Der Codeschnipsel mit der Beispielklasse würde folgende Ausgabe bewirken:
Frage: Was tut der Mensch zuweilen?
Antwort: Der Mensch denkt zuweilen über Unfug nach.
Diese Ausgabe würde sich jedoch auch dann nicht ändern oder eine Error-Meldung des Parsers auslösen,
wenn die Bezeichner sich deutlich in der Groß- und Kleinschreibung unterscheiden würden. Zum Test wurden die letzten beiden
Zeilen des obigen Codes entsprechend abgewandelt:
Beispiel 2: Schlechtes, nur zum Test und nicht zur Nachahmung empfohlenes Beispiel.
<?php $ausgabe = new DERMENSCH(); // funktioniert echo "Antwort: ".$ausgabe->BEANTWORTEFRAGE(); // funktioniert ?>
Anders sieht es bei den Bezeichnern von Konstanten, Variablen und Eigenschaften aus, wo peinlichst genau
auf die Groß- und Kleinschreibung geachtet werden muss. Vielfach werden aus besagtem Grund die Namen von Variablen durchgehend
klein geschrieben, die von Funktionen und Methoden hingegen in "camelCase" (lowerCamelCase), die von Klassen
in "CamelCase" (auch benannt als PascalCase oder UpperCamelCase) und die von Konstanten durchgehend
groß.
Bei nachfolgenden Hinweisen handelt es sich um keine verbindlichen Regeln, eher mehr um
Vorschläge.
Variablen: Die Namen der Variablen sollten auf deren Verwendung schlussfolgern lassen. Zumindest der jeweilige
Programmierer sollte leicht erkennen können, warum er eine Variable mit $endsumme und eine andere mit $derPreis benannte. Ob er
dabei zur Trennung einen Unterstrich verwendet, wie bei $der_preis oder nicht, bleibt hingegen dem Programmierer überlassen,
solange er den Durchblick nicht verliert. Werden alle Variablen durchgehend klein geschrieben und erforderlichenfalls mit
Unterstrichen getrennt, wird jedoch die Fehleranfälligkeit durch Groß- und Kleinschreibung minimiert.
Dem steht die "camelCase" Notation gegenüber, bei dem der erste Buchstabe eines aus zwei Wörtern oder Ausdrücken
zusammengesetzten Bezeichners klein geschrieben wird, der zweite Teil eines Bezeichners hingegen mit einem Großbuchstaben
beginnt. Siehe Beispiel mit $derPreis. Da die "camelCase" Notation jedoch für die Bezeichner von Funktionen und
Methoden empfohlen wird, sollte diese eventuell nicht überstrapaziert werden.
Konstanten: Selbstdefinierte Konstanten werden durchgängig groß geschrieben, was zwar theoretisch keine
Pflicht ist, doch sich mehr oder weniger so durchsetzte und wohl von den meisten Programmierern berücksichtigt wird.
Beispiel 3:
<?php define("DATEN_ZUGANG", "...ist geheim..."); echo DATEN_ZUGANG; // Ausgabe: ...ist geheim... ?>
Funktionen und Methoden: Die Bezeichner von selbstdefinierten Funktionen und Methoden
sollten in "camelCase" geschrieben werden, wobei der erste Teil nach Möglichkeit ein Tätigkeitswort (auch als
Verb oder Zeitwort bezeichnet) enthalten sollte, welches zum Ausdruck bringt, was die jeweilige Funktion oder Methode tun
oder erledigen sollte. Im ersten Beispiel erhielt die Methode aus diesem Grund den Bezeichner "beantworteFrage".
Weitere Beispiele wären zum Beispiel "pruefeEingabe" oder "wandleUmlaute ".
Wer es sich bei Methoden etwas einfacher machen möchte, kann get oder set verwenden, je nachdem ob bei der Rückgabe Werte
geliefert oder gesetzt werden sollen. Ob der zweite Teil des Bezeichners dann unbedingt aus einem Substantiv bestehen sollte,
darüber ließe sich streiten, da zuweilen auch Umstandswörter (Adverben) wie in "rechneAus" zumindest in
Kombination geeignet erscheinen.
Nur stört in diesem Beispiel das große A ein wenig, woraus sich die Frage ergeben würde, ob "camelCase" dann nicht
lieber zugunsten des Unterstrichs (wie bei rechne_aus) weichen sollte.
Klassen: Bei den Bezeichnern von Klassen sollte von der "CamelCase" Schreibweise Gebrauch gemacht
werden und das auch dann, wenn es der eine oder andere Programmierer bei Variablen, Funktionen, Eigenschaften und Methoden nicht
so eng sieht. Doch eine Klasse enthält Eigenschaften und/oder Methoden und dient der Erzeugung von Objekten als Instanz der
jeweiligen Klasse. Durch die "CamelCase"-Schreibweise lässt sich einfach verdeutlichen, ob es sich in einem
beliebigen Code um eine Klasse handelt oder eben nicht, vorausgesetzt bei anderen Bezeichnern wurde nicht ebenfalls die
"CamelCase"-Notation verwendet.
Der Bezeichner einer Klasse sollte weiterhin ein Substantiv enthalten. Handelt es sich dabei um ein zusammengesetztes Nomen, so
beginnt jedes Wort (nicht Silbe) mit einem "GroßBuchStaben". Ob sich die Klasse dann von aus Buchenholz
geschnitzten Runen ableiten lässt, ist eine andere Frage, nur so viel scheint festzustehen, dass es sich bei den Buchstaben um
Stäbchen handelte, die noch nichts mit dem späteren Buchdruck zu tun hatten. Ob einer Klasse nun nur mit "Mensch"
oder mit "DerMensch" oder mit "HomoSapiens" benannt wird, steht auf einem anderen Blatt und lässt genügend
Spielraum für eigene Vorstellungen.
Eigenschaften: Siehe Variablen
Einstieg in PHP
Übersicht
Diverse Themen