Ergänzung zu Variablengrenzen

Variablen‑Voreinstellung:#set ($valok = "hello foxdevelop")

Variablen‑Grenze ${} und Zugriffsunterschied mit .

CodeErgebnisErläuterung
$valokhello foxdevelopEinfache Variablenausgabe
$valok.comhello foxdevelop.comVelocity versucht Eigenschaft/Methode cn des Objekts valok aufzurufen; der String hat keine Methode cn, Variable plus Suffix wird unverändert ausgegeben
${valok}.comhello foxdevelop.com{} fixiert die Variablengrenze. Nach der Auswertung von valok wird der Text .com angehängt (empfohlene Schreibweise)
$!valok.comhellofoxdevelop.comStiller Verweis $!: verhält sich wie $valok bei vorhandener Variable; gibt leeren String statt rohem $xxx aus, falls die Variable fehlt
${valok.com}leerVersuch, Eigenschaft valok.com zu lesen. Der String besitzt keine Eigenschaft com, Variable ist nicht vorhanden. Nutze $!{valok.com} für leere Ausgabe


${valok}.cn ✅ Variable + Suffix anhängen
${valok.cn} ❌ Zugriff auf Eigenschaft cn des Objekts valok

Einfache / Doppelte Anführungszeichen & Variablen‑Verklebung

CodeErgebnisErläuterung
what$valokwhathello foxdevelopDirekte Verkettung, Velocity erkennt die Variablengrenze automatisch
what$"valok"what$“valok“❌ Ungültige Syntax. Nach $ darf kein Anführungszeichen folgen, Variable wird nicht geparst
what"$valok"what“hello foxdevelopAnführungszeichen sind nur einfache Zeichen im Template, sie lösen keine String‑Auswertung aus; Variable wird normal aufgelöst
what'$valok'what’hello foxdevelopGleiches Verhalten, einfache Anführungszeichen sind Literalzeichen
$valokwhat$valokwhat❌ Variable nicht erkennbar! Velocity interpretiert valokwhat als kompletten Variablennamen und gibt rohen Text aus, wenn er fehlt
${valok}whathello foxdevelopwhat✅ Geschweifte Klammern fixieren die Grenze, löst das Problem von Variable angehängt an Text

Zusammenfassung

  1. Nutze immer ${Variablenname}, wenn Variable an Text angrenzt
    Falsch:$valokwhat;Richtig:${valok}what
  2. Zum Anhängen von Text: ${valok}.cn schreiben, nicht ${valok.cn}
  3. $!Variable stiller Verweis: gibt leer aus, wenn Variable fehlt, statt $xxx anzuzeigen
  4. Anführungszeichen im Template‑HTML sind einfache ZeichenNur innerhalb von #set‑Zuweisungen verhalten sich einfache (keine Variablenauswertung) und doppelte Anführungszeichen (Variablen auflösen) unterschiedlich
#set($a = "$valok") // Doppelte Anführungszeichen: Variable auflösen, a=hello bamn
#set($a = '$valok') // Einfache Anführungszeichen: keine Auflösung, a=$valokCode-Sprache: PHP (php)

Ergänzung zu Variablengrenzen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert