Hallo,
Das sehe ich nicht so. Das Ergebnis einer Zuweisung ist der Wert der Zuweisung.
if ($id = getID())
Verwendung von $id
Völlig korrekt. Aber dann hast du auch keinen _Vergleich_, sondern nur eine _Auswertung_ eines Ausdrucks als boolean. Es ändert nichts daran, dass '=' hier ausschließlich ein Zuweisungs- und kein Vergleichsoperator ist.
Das geht in C übrigens genauso elegant. :)
Ciao,
Martin