Allgemeine Konventionen:
- Verwenden Sie Tabs für die gesamte Code-Einrückung. Konfigurieren Sie Ihren Editor so, dass Tabs als Tabulatorzeichen und nicht als Leerzeichen gespeichert werden. Verwenden Sie nicht eine Vielzahl von Leerzeichen zur Einrückung.
- Neue Dateien in SVN / Git müssen UTF-8-Kodierung verwenden (ohne BOM).
- Zeilenenden im Unix-Stil: LF
- Dateinamen, die in allen direkt zugänglichen URLs enthalten sind, müssen in Kleinbuchstaben geschrieben sein; wenn ein Name aus mehreren Wörtern besteht, verbinden Sie diese mit Unterstrichen.
- Zeilenbreite: 120 Zeichen
Code-Standards
Beispiele
<?php // Muss mit <?php beginnen
// xxx@example.com Jede Datei muss die E-Mail-Adresse des Eigentümers angeben
require_once('conf/config.inc.php'); // require_once muss Klammern haben, und vor der linken Klammer darf kein Leerzeichen stehen
class CodingStandard { // Vor geschweiften Klammern ein Leerzeichen einfügen. Klassennamen beginnen mit einem Großbuchstaben; bei mehreren Wörtern beginnt jedes mit einem Großbuchstaben
private $attribute; // Kommentare zu Eigenschaften werden direkt nach der Eigenschaft geschrieben
// Array-Format
public $color = array(
'1' => 'red', // Einmal mit einem Tabulator einrücken
'2' => 'blue',
'3' => 'yellow',
'4' => array(
'1' => 'green', // Nach dem Ausrichten an den Array-Spalten oben noch einmal mit einem Tabulator einrücken
'2' => 'gray'
) // Das Ende des Arrays fluchtet mit dem allerersten Anfang der deklarierten Variable
); // Das Ende des Arrays fluchtet mit der Stelle, an der die Array-Variable deklariert ist
public $number = array(1, 2, 3, 4); // Bei einfachen Arrays können sie in einer Zeile platziert werden
// Methodenkommentare verwenden doppelte Schrägstriche und sollten nach Möglichkeit in einer Zeile abgeschlossen werden
function foo($i, $list) { // 1. Nach dem Funktionsnamen steht kein Leerzeichen vor der ( 2. Bei mehreren Parametern muss, wenn ein Komma vorhanden ist, danach ein Leerzeichen stehen
for ($j = 0; $j < $i; $j++) { // Nach for ein Leerzeichen einfügen
echo "Dies ist Nr.{$j}, Inhalt ist {$list[$j]}"; // echo-Anweisungen verwenden keine Klammern.
// Ob in echo-Anweisungen einfache oder doppelte Anführungszeichen verwendet werden, hängt von der jeweiligen Situation ab
echo '<table border="0" cellspacing="5" cellpadding="5">';
}
if ($i > 0) { // 1. Ein Leerzeichen nach if einfügen 2. Operatoren müssen auf beiden Seiten Leerzeichen haben
return $i % 2; // Operatoren haben auf beiden Seiten Leerzeichen
} else { // else muss ebenfalls auf beiden Seiten Leerzeichen haben
return null;
}
if ($j == $i) return 1; // Wenn ein if nur eine einzelne kurze Anweisung enthält, wird empfohlen, sie in eine Zeile zu schreiben; beim Aufteilen auf mehrere Zeilen wird empfohlen, Klammern hinzuzufügen.
$count = count($_SERVER); // Die Zuweisung außerhalb schreiben
if ($count > 10) echo 'pass'; // In if nur eine boolesche Prüfung durchführen; keine Zuweisungsanweisungen schreiben
}
public static function testFunction() { // Die Benennung sowohl statischer als auch nicht-statischer Methoden folgt dem camelCase-Prinzip
}
}
$s = new CodingStandard(); // Beim Erstellen eines Objekts mit new müssen Klammern hinzugefügt werden
$s->foo(10, $s->color); // In den Klammern nach einer Funktion darf kein Leerzeichen stehen. Wenn eine Funktion mehr als einen Parameter hat, muss nach jedem Komma ein Leerzeichen stehen
CodingStandard::testFunction(); // Statische Code-Aufrufe haben nur eine Möglichkeit: den Aufruf mit doppeltem Doppelpunkt
// PHP-Dateien müssen mit ?> enden, und stellen Sie sicher, dass danach keine Leerzeichen oder Leerzeilen stehen.
?>
// xxx@example.com Jede Datei muss die E-Mail-Adresse des Eigentümers angeben
require_once('conf/config.inc.php'); // require_once muss Klammern haben, und vor der linken Klammer darf kein Leerzeichen stehen
class CodingStandard { // Vor geschweiften Klammern ein Leerzeichen einfügen. Klassennamen beginnen mit einem Großbuchstaben; bei mehreren Wörtern beginnt jedes mit einem Großbuchstaben
private $attribute; // Kommentare zu Eigenschaften werden direkt nach der Eigenschaft geschrieben
// Array-Format
public $color = array(
'1' => 'red', // Einmal mit einem Tabulator einrücken
'2' => 'blue',
'3' => 'yellow',
'4' => array(
'1' => 'green', // Nach dem Ausrichten an den Array-Spalten oben noch einmal mit einem Tabulator einrücken
'2' => 'gray'
) // Das Ende des Arrays fluchtet mit dem allerersten Anfang der deklarierten Variable
); // Das Ende des Arrays fluchtet mit der Stelle, an der die Array-Variable deklariert ist
public $number = array(1, 2, 3, 4); // Bei einfachen Arrays können sie in einer Zeile platziert werden
// Methodenkommentare verwenden doppelte Schrägstriche und sollten nach Möglichkeit in einer Zeile abgeschlossen werden
function foo($i, $list) { // 1. Nach dem Funktionsnamen steht kein Leerzeichen vor der ( 2. Bei mehreren Parametern muss, wenn ein Komma vorhanden ist, danach ein Leerzeichen stehen
for ($j = 0; $j < $i; $j++) { // Nach for ein Leerzeichen einfügen
echo "Dies ist Nr.{$j}, Inhalt ist {$list[$j]}"; // echo-Anweisungen verwenden keine Klammern.
// Ob in echo-Anweisungen einfache oder doppelte Anführungszeichen verwendet werden, hängt von der jeweiligen Situation ab
echo '<table border="0" cellspacing="5" cellpadding="5">';
}
if ($i > 0) { // 1. Ein Leerzeichen nach if einfügen 2. Operatoren müssen auf beiden Seiten Leerzeichen haben
return $i % 2; // Operatoren haben auf beiden Seiten Leerzeichen
} else { // else muss ebenfalls auf beiden Seiten Leerzeichen haben
return null;
}
if ($j == $i) return 1; // Wenn ein if nur eine einzelne kurze Anweisung enthält, wird empfohlen, sie in eine Zeile zu schreiben; beim Aufteilen auf mehrere Zeilen wird empfohlen, Klammern hinzuzufügen.
$count = count($_SERVER); // Die Zuweisung außerhalb schreiben
if ($count > 10) echo 'pass'; // In if nur eine boolesche Prüfung durchführen; keine Zuweisungsanweisungen schreiben
}
public static function testFunction() { // Die Benennung sowohl statischer als auch nicht-statischer Methoden folgt dem camelCase-Prinzip
}
}
$s = new CodingStandard(); // Beim Erstellen eines Objekts mit new müssen Klammern hinzugefügt werden
$s->foo(10, $s->color); // In den Klammern nach einer Funktion darf kein Leerzeichen stehen. Wenn eine Funktion mehr als einen Parameter hat, muss nach jedem Komma ein Leerzeichen stehen
CodingStandard::testFunction(); // Statische Code-Aufrufe haben nur eine Möglichkeit: den Aufruf mit doppeltem Doppelpunkt
// PHP-Dateien müssen mit ?> enden, und stellen Sie sicher, dass danach keine Leerzeichen oder Leerzeilen stehen.
?>