dedlfix: Vereinfachung von PHP-Code

Beitrag lesen

Hi!

$p += (bool)count($position->position);
das geht in vielen Programmiersprachen gut; es ist aber heikel, weil man sich damit auf den numerischen Wert des boolschen Ausdrucks true verlässt.

Ich will das ja auch nicht weiter propagieren. Unter PHP ist sie problemlos möglich, denn da sind die Werte 0 und 1 für false und true definiert. Wichtiger ist, dass sie schlecht lesbar ist und es bessere Lösungen gibt.

Es reicht

if (count($position->position));
    $p++;
Nein, so bitte nicht! Ein Semikolon nach der Klammer des if-Statements, ohne dass eine Anweisung oder ein Anweisungsblock folgt, ist syntaktisch erlaubt, ergibt aber keinen Sinn und ist fast immer ein logischer Fehler.

Copy'n'Paste-Fehler, das Semikolon sollte da natürlich gar nicht hin.

Lo!