Sie verwenden einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Sie sollten ein Upgrade durchführen oder einen alternativen Browser verwenden.
Ich frage mich, ob es Möglichkeiten gibt, PHP beim Parsen restriktiver zu machen, damit der Programmierer gezwungen ist, sauberer zu programmieren? PHP ist ja sehr légèr in diversen Gebieten...
QUOTE (Josh @ Mo 24.1.2005, 10:15) Ich frage mich, ob es Möglichkeiten gibt, PHP beim Parsen restriktiver zu machen, damit der Programmierer gezwungen ist, sauberer zu programmieren? PHP ist ja sehr légèr in diversen Gebieten...
Definiere "sauberer"
Du kannst alle Warnhinweise per php.ini aktivieren. Du kannst auf register_globals verzichten. Du kannst alle Variablen vor ihrer Verwendung prüfen bzw. manuell initialisieren.
Ich glaube dass ein paar Editoren da zumindest helfen können. Zend hat z.B: die Funktion Code analysieren.
Kommt z.B.
if ($ayom != ’test’{
echo 'Hello World';
}
vor und $ayom wird davor nicht gesetzt. wird das gemeldet. Das ist natürlich nur bedingt tauglich, aber besser als nichts.
Ein Vorteil von PHP ist, das es so wenig Restriktionen gibt, das sogar Anfänger Programme schreiben können, aber ein Nachteil von PHP ist, dass selbst Leute die gut programmieren können schnell nicht mehr ganz so schönen Code produzieren. Die Verlockung für ein Quick & Dirty Lösung ist immens groß.
Ich habe in diesem Zusammenhang gerade etwas in der Doku gestöbert, und bin dabei leider über nichts wirklich relevantes gestolpert.
Aber eine Sache finde ich doch spannend. Und zwar gibt es ein Sprachkonstukt "declare()", dokumentiert auf http://de.php.net/declare . Damit kann man sich einen Profiler bauen, um seinen Code gezielt auf Performance optimieren zu können. Passt ja auch irgendwie auch zum "sauber programmieren", oder?
Zitat von http://de3.php.net/manual/de/ref.errorfunc.php#e-notice QUOTE Enabling E_NOTICE during development has some benefits. For debugging purposes: NOTICE messages will warn you about possible bugs in your code. For example, use of unassigned values is warned.
Ab PHP5 gibt es auch E_STRICT - es weist auf Programmierstandards hin.