PHP Coding Standard Validator
Hugo Balter
- php
0 Der Martin0 suit0 Hugo Balter0 Der Martin0 suit
0 misterunknown0 Matti Mäkitalo0 Multi
Hallo,
ich wollte mal nachfragen, ob es einen PHP Coding Standard Validator gibt, sowie den W3C CSS oder HTML Validator? Es geht mir dabei um die Überprüfung des Programmierstils, also Automatisches Einrücken; Leerezichen nach Kommata usw.
Gruß, Hugo Balter
Hi,
ich wollte mal nachfragen, ob es einen PHP Coding Standard Validator gibt, sowie den W3C CSS oder HTML Validator? Es geht mir dabei um die Überprüfung des Programmierstils, also Automatisches Einrücken; Leerezichen nach Kommata usw.
ich weiß nicht, ob es so ein Tool gibt, halte es aber für möglich.
Allerdings vergleichst du hier sozusagen Inhalt und Darstellung. Der HTML/CSS-Validator prüft ja auch nicht auf Einrückungsstil und saubere Schreibweise, sondern nur auf Einhaltung der Syntaxregeln. Dasselbe prüft der PHP-Parser ohnehin vor dem Ausführen eines Scripts, und falls das Script syntaktisch nicht in Ordnung ist, verweigert er die Zusammenarbeit. Im besten Fall mit einer hilfreichen Fehlermeldung.
Und ein Coding Style ja nichts, was durch eine Vorschrift, eine feste Regel oder durch einen verbindlichen Standard festgelegt ist, sondern nur eine Konvention, die eine Gruppe von Programmierern untereinander vereinbart. Das ist also ein wesentlicher Unterschied zur Validierung von HTML und CSS, wo man gegen eine Vorschrift prüft und "richtig" oder "falsch" herausbekommt. Selbstverständlich kann man für HTML- und CSS-Quellcode auch Coding Styles festlegen und deren Einhaltung überprüfen. Zusätzlich zur Validität.
Ciao,
Martin
Und ein Coding Style ja nichts, was durch eine Vorschrift, eine feste Regel oder durch einen verbindlichen Standard festgelegt ist, sondern nur eine Konvention, die eine Gruppe von Programmierern untereinander vereinbart.
Naja - wenn du einen Dienstvertrag mit einem CGL-Absatz unterschreibst, ist das schon mehr eine Vorschrift als eine Konvention :)
Hallo,
Und ein Coding Style ja nichts, was durch eine Vorschrift, eine feste Regel oder durch einen verbindlichen Standard festgelegt ist, sondern nur eine Konvention, die eine Gruppe von Programmierern untereinander vereinbart.
Naja - wenn du einen Dienstvertrag mit einem CGL-Absatz unterschreibst, ist das schon mehr eine Vorschrift als eine Konvention :)
würde ich auch nicht tun. Vorschreiben lasse ich mir nicht, wie ich meinen Code zu formatieren habe. Im äußersten Fall bin ich bereit, ein paar Do's und Dont's einzuhalten (aber auch nicht alle), doch ich bestehe immer noch drauf, dass Code, der von mir stammt, auch erkennbar meine "Handschrift" trägt.
Ciao,
Martin
Ich habe nämlich schon so viele PHP-Dateien geschrieben, die müsste ich alle von Hand ändern und das ist mir zu mühsam. Es geht mir natürlich um die Coding Style Konvention. Es wäre gut wenn es ein Tool geben könnte was einem den selbst geschriebenen Code automatisch einschiebt usw, also einem Coding-Stil entsprechend formatiert.
Hi,
Ich habe nämlich schon so viele PHP-Dateien geschrieben, die müsste ich alle von Hand ändern und das ist mir zu mühsam. Es geht mir natürlich um die Coding Style Konvention. Es wäre gut wenn es ein Tool geben könnte was einem den selbst geschriebenen Code automatisch einschiebt usw, also einem Coding-Stil entsprechend formatiert.
ach so, also meinst du nicht nur einfach eine Überprüfung, sondern gleich eine neue, saubere Formatierung des Quellcodes? Solche Tools gibt's für manche Sprachen tatsächlich - mit den Stichworten "tidy" oder "beautifier" könnte man weiterkommen.
Wunder darf man allerdings nicht erwarten. ;-)
So long,
Martin
Es wäre gut wenn es ein Tool geben könnte was einem den selbst geschriebenen Code automatisch einschiebt usw, also einem Coding-Stil entsprechend formatiert.
http://www.gnu.org/s/indent/ hab' ich mal ausprobiert, funktioniert mit PHP aber eher bemessen :)
Per Suchmaschine hab' ich auf die schnelle folgendes gefunden:
http://www.decodephp.com/codecleaner/
Problem nach schnellem Test: argumente von Funktionsaufrufen usw werden in eine Wurst gepackt und fördert nicht grade die Lesbarkeit.
Dasselbe gilt für komplexe Verzweigungen:
<?php
if (
$foo ||
$bar ||
$baz ||
$qux
) {
// something
}
?>
wird zu
<?php
if ($foo ||$bar ||$baz ||$qux) {
// something
}
?>
Wie soll hier ein Automatismus entscheiden, ob es sinnvoll ist das einzurücken, umzubrechen oder nicht? :)
Da muss es schon eine konfigurierbare Lösung geben.
Moin,
ich habe mir mal ein Tool geschrieben, allerdings macht es grundsätzlich nicht viel. Ich habe es verwendet um Javascript-Code lesbar zu machen. Du kannst es dir ja mal angucken:
CodeStructurer
Wenn du willst kann ich dir auch die Quellen geben. Ein paar Codezeilen gibts auch hier.
Grüße Marco
Hi,
ich wollte mal nachfragen, ob es einen PHP Coding Standard Validator gibt, sowie den W3C CSS oder HTML Validator? Es geht mir dabei um die Überprüfung des Programmierstils, also Automatisches Einrücken; Leerezichen nach Kommata usw.
PHP_CodeSniffer ist ein Tool, welches rein auf Einrückungen und Co achtet (allerdings keine automatische Korrektur). Dauert ein wenig, bis man alles so hingebogen hat, wie man es will, danach aber sehr gut einsetzbar, und liefert u.a. auch mit Jenkins/Hudson kompatible Ausgaben (checkstyle).
PHPMD - PHP Mess Detector liefert dir Ausgaben über mögliche Bugs, macht also eine inhaltliche Kontrolle deines Quelltextes. Ebenfalls in Jenkins/Judson einbettbar (Modul pmd).
Bis die Tage,
Matti
Mein Quanta+ kann das mit den "üblichen" Coding-Standards. Funktioniert zwar nicht immer optimal aber es erspart zumindest einiges an Arbeit wenn Fremdscripte reinkommen, die modifiziert werden müssen.