PHP - Programmierstandards

Hallo, zukünftige PHP-Entwickler! Ich freue mich sehr, euch durch die faszinierende Welt der PHP-Programmierstandards zu führen. Als jemand, der seit Jahren Programmierung unterrichtet, kann ich euch versichern, dass das Beherrschen dieser Standards euren Code sauberer, lesbarer und professioneller machen wird. Lassen wir unsTauchen wir ein!

PHP - Coding Standard

Einrücken und Zeilenlänge

Richtige Einrückung ist im Coding wie gute Manieren - sie macht alles angenehmer und leichter zu verstehen. In PHP verwenden wir typischerweise 4 Leerzeichen für jede Einrückstufe. Hier ist ein Beispiel:

<?php
if ($condition) {
echo "Diese Zeile ist eingerückt";
if ($another_condition) {
echo "Diese Zeile ist noch mehr eingerückt";
}
}

In diesem Beispiel ist die erste echo-Anweisung einmal eingerückt (4 Leerzeichen), und die zweite echo-Anweisung ist zweimal eingerückt (8 Leerzeichen). Diese visuelle Hierarchie hilft uns, die Code-Struktur schnell zu verstehen.

Was die Zeilenlänge betrifft, versucht eure Zeilen unter 80 Zeichen zu halten. Wenn eine Zeile zu lang wird, bricht sie in mehrere Zeilen auf, wie hier:

$very_long_variable_name = $another_long_variable_name
+ $yet_another_long_variable_name
+ $one_more_long_variable_name;

Kontrollstrukturen

Kontrollstrukturen sind die Bausteine der Logik eures Programms. In PHP sind die häufigsten if, else, elseif, while, for und switch. Hier ist, wie man sie korrekt formatiert:

if ($condition1) {
// Code hier
} elseif ($condition2) {
// mehr Code hier
} else {
// noch mehr Code hier
}

while ($condition) {
// wiederholter Code
}

for ($i = 0; $i < 10; $i++) {
// wiederholter Code
}

switch ($variable) {
case 1:
// Code für Fall 1
break;
case 2:
// Code für Fall 2
break;
default:
// Standard-Code
break;
}

Beachtet, wie jeder Codeblock in geschweifte Klammern {} eingeschlossen und ordnungsgemäß eingerückt ist.

Funktionsaufrufe

Beim Aufruf von Funktionen sollte kein Leerzeichen zwischen dem Funktionsnamen und der öffnenden Klammer sein. Hier ist die richtige Weise:

$result = myFunction($arg1, $arg2);

Wenn der Funktionsaufruf zu lang ist, könnt ihr ihn in mehrere Zeilen aufteilen:

$result = myVeryLongFunctionName(
$arg1,
$arg2,
$arg3,
$arg4
);

Funktionsdefinitionen

Beim Definieren von Funktionen folgt diesem Format:

function myFunction($arg1, $arg2 = null)
{
// Funktionskörper
}

Beachtet, dass das öffnende geschweifte Klammern { in einer neuen Zeile steht. Dies wird als "Allman-Stil" bezeichnet und ist in PHPcommon.

Kommentare

Kommentare sind entscheidend, um euren Code zu erklären. Nutzt sie großzügig! Hier sind die Arten von Kommentaren in PHP:

// Dies ist ein Einzeiliger Kommentar

/*
Dies ist ein mehrzeiliger Kommentar.
Er kann mehrere Zeilen umfassen.
*/

/**
* Dies ist ein DocBlock-Kommentar.
* Er wird verwendet, um Funktionen, Klassen usw. zu dokumentieren.
*
* @param string $arg1 Beschreibung des ersten Arguments
* @return bool Beschreibung dessen, was die Funktion zurückgibt
*/
function myDocumentedFunction($arg1)
{
// Funktionskörper
}

PHP-Code-Tags

Wenn ihr PHP-Code schreibt, verwendet immer die vollständigen PHP-Tags:

<?php
// Euer PHP-Code hier
?>

Vermeidet die Verwendung von Kurz-Tags wie <?, da diese nicht auf allen Servern aktiviert sind.

Variablennamen

Variablennamen sollten beschreibend sein und kleine Buchstaben mit Unterstrichen (snake_case) verwenden:

$user_name = "John";
$total_items = 5;

Für Konstanten verwendet man alle Großbuchstaben mit Unterstrichen:

define('MAX_USERS', 100);

Functions reentrant machen

Eine reentrant Funktion ist eine, die während ihrer Ausführung unterbrochen und dann sicher erneut aufgerufen werden kann. Um dies zu erreichen, vermeidet die Verwendung von globalen Variablen oder statischen Variablen in euren Funktionen. Hier ist ein Beispiel:

// Nicht reentrant
function badCounter()
{
static $count = 0;
return ++$count;
}

// Reentrant
function goodCounter($count)
{
return ++$count;
}

Ausrichtung von Deklarationsblöcken

Wenn mehrere Variablen deklariert werden, richtet sie für bessere Lesbarkeit aus:

$short        = 1;
$long_variable = 2;
$longer_variable = 3;

Eine Anweisung pro Zeile

Für Klarheit sollte nur eine Anweisung pro Zeile stehen:

$a = 1;
$b = 2;
$c = 3;

Vermeidet:

$a = 1; $b = 2; $c = 3; // Dies ist schwieriger zu lesen

Kurze Methoden oder Funktionen

Halten eure Funktionen kurz und konzentriert auf eine einzelne Aufgabe. Als Faustregel, wenn eine Funktion länger als 20-30 Zeilen ist, überlegt, sie in kleinere Funktionen aufzuteilen.

Hier ist eine Tabelle, die einige der wichtigsten PHP-Programmierstandards, die wir besprochen haben, zusammenfasst:

Standard Beispiel
Einrückung 4 Leerzeichen
Zeilenlänge Unter 80 Zeichen
Funktionsaufrufe myFunction($arg1, $arg2);
Funktionsdefinitionen function myFunction($arg1, $arg2) { ... }
Variablennamen snake_case verwenden: $user_name
Konstanten GROSSBUCHSTABEN verwenden: MAX_USERS
Kommentare Verwenden von //, /* */, oder /** */
PHP-Tags Always use <?php ?>

Denkt daran, diese Standards sind keine willkürlichen Regeln. Sie sind Best Practices, die über Jahre von der PHP-Community entwickelt wurden, um Code lesbarer und wartbarer zu machen. Indem ihr diese Standards befolgt, schreibt ihr nicht nur Code - ihr kommuniziert mit anderen Entwicklern, die möglicherweise in Zukunft euren Code bearbeiten könnten. Und wer weiß? Dieser zukünftige Entwickler könnte ihr sein!

Als wir uns dem Ende nähern, erinnere ich mich an einen Studenten, der mir einmal sagte: "Das Lernen von Programmierstandards ist wie das Lernen von Tischmanieren. Es scheint zuerst lästig, aber wenn man sich daran gewöhnt hat, fragt man sich, wie man ohne sie jemals gelebt hat!" Also, weiter üben diese Standards, und bald werden sie zur zweiten Natur. Viel Spaß beim Coden!

Credits: Image by storyset