Wofür ist das “@”-Symbol in Kommentaren?

Lesezeit: 1 Minute

In PHP habe ich bemerkt, dass Leute das “@”-Symbol in Quellcode-Kommentare eingefügt haben. Ein großartiges Beispiel ist alles WordPress. Wenn Sie sich die Quelle ansehen, sehen Sie Dinge wie

/** Results of the last query made
 *
 * @since 1.0.0
 * @access private
 * @var array|null
 */
var $last_result

(wp-db.php, Zeile 124)

Es ändert die Syntaxhervorhebung in meinem Editor, also gehe ich davon aus, dass es etwas tut, aber ich bin mir nicht sicher, was es tut. Würde jemand erklären, was das “@”-Symbol in Kommentaren bewirkt?

Diese sind PHPDoc Kommentare. Sie sollen maschinenlesbar sein, um die automatisierte Dokumentation und IDE-Code-Vervollständigung zu unterstützen.

Benutzeravatar von Night Owl
Nachteule

Die vorherigen Antworten geben zu Recht an, dass die @-Symbole in Quellkommentaren PHPDoc-Kommentare sind. Sie können außerdem für etwas namens “Annotation” verwendet werden, das Metadaten zu einem Codeelement hinzufügt und das Verhalten einer Anwendung beeinflussen kann. Es wird in PHP nicht offiziell unterstützt, aber es wird seit mehreren Jahren diskutiert und in Symfony, Doctrine und anderen Projekten verwendet.

Eine hervorragende Erklärung per Slideshow (keine Zugehörigkeit zu mir) zu allen Dingen PHP und Anmerkungen:

http://www.slideshare.net/rdohms/annotations-in-php-they-exist

Eine allgemeine Diskussion zum Thema Annotation:

http://en.wikipedia.org/wiki/Annotation

Ein RFC aus dem Jahr 2010 bezüglich der Implementierung von Annotationen in PHP:

http://wiki.php.net/rfc/annotations

Solche Notationen dienen dazu, aus Kommentaren einen Dokumentationsparser zu erstellen. Das erste @ könnte also als Version identifiziert werden, das zweite als Argument und so weiter.

Dies geschieht normalerweise, um automatisch Dokumentation aus Quellcodedateien zu generieren. In diesem Fall das @_ werden verwendet, um Metadaten über die Variable zu identifizieren. Anstatt der Reihe nach ausgewertet zu werden, kann @var dem Dokumentationsparser mitteilen, dass der folgende Text die Variable beschreibt und so weiter.

1397640cookie-checkWofür ist das “@”-Symbol in Kommentaren?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy