dedlfix: SUchen und ersetzen

Beitrag lesen

Tach!

$z[1] = str\_replace("".$\_GET["s"]."", ...  

Wozu hängst du an den String, den du verarbeitest, vorne und hinten nochmal einen Leerstring an, was den Ausdruck im Endeffekt unverändert lässt?

Manche notieren das so (also zumindest einen Leerstring am Anfang), weil damit als Nebenwirkung ein Typecast zu String einhergeht. Solche Nebenwirkungen auszunutzen, besonders wenn die dafür notwendige Syntax auf den ersten Blick überflüssig aussieht, kann man nicht gerade als verständliches Programmieren bezeichnen. Ob das in dem Fall bezweckt ist, weiß ich natürlich nicht. Es ist nur eine mögliche Erklärung für solch eine Notation. Allerdings stehen in $_GET und $_POST immer String-Werte *). Ein Typecast zu String bringt keine Änderung. Damit können die Anführungszeichen komplett entfallen und es muss auch kein expliziter Typecast notiert werden.

*) Die Ausnahme mit den Arrays und dass man selbst andere Datentypen in $_GET/$_POST ablegen kann, lass ich der Einfachheit halber mal unerwähnt.

dedlfix.