Gunnar Bittersmann: Bei $ im echo gibt es Probleme

Beitrag lesen

@@johny7:

nuqneH

Du musst das $ in Strings mit doppelten Anführungszeichen escapen. Richtig wäre also:
$Lautsprecher = " & \$laenge >= ".$api_lautsprecher->laenge_min;

Nein, das ist nicht richtig.

Richtig ist es, den Parser nicht nach Variablen in Strings suchen zu lassen, wenn man dies nicht braucht. Also keine doppelten Anführungszeichen zu verwenden.

Außerdem muss '&' in HTML escapet werden; bei '>' schadet’s auch nicht. Also entweder
$Lautsprecher = '[code lang=html] & $laenge >= '.$api_lautsprecher->laenge_min;[/code]

oder auf die feine Art

$Lautsprecher = ' & $laenge >= '.$api_lautsprecher->laenge_min;

und dann aber

echo htmlspecialchars($Lautsprecher);

Qapla'

PS: Warum sollte man „$laenge >= “ ausgeben wollen anstatt „Länge ≥ “?

--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)