1. Diferença entre comentários de template
| Sintaxe | Tipo | Características |
|---|---|---|
<!-- Comentário HTML --> | Comentário nativo HTML | É gerado no código‑fonte final da página, visível ao exibir o código no navegador |
## Comentário de linha única | Comentário de linha única do Velocity | Reconhecido apenas pelo motor, não aparece na página, válido até o fim da linha |
#* Conteúdo do comentário multilinha *# | Comentário multilinha do Velocity | Suporta quebras de linha, não aparece na página |
Dica de desenvolvimento: use preferencialmente
##/#* *#para comentários de lógica de negócio, evitando vazar anotações no código‑fonte da página.
2. Regras de nomenclatura de variáveis
Regras básicas oficiais
- O primeiro caractere da variável precisa ser uma letra (a‑z / A‑Z)
- Caracteres permitidos depois: letras, números
0‑9, sublinhado_, hífen-
O hífen - causa ambiguidade com operadores
#set($name-d = "test")Code language: PHP (php)
Ao executar, ocorre o erro: Encountered "name" ... Was expecting one of:
Motivo: o Velocity interpreta - como operador de subtração!
O motor interpreta como $name - d, ou seja, variável $name menos variável d, gerando conflito de sintaxe.
Duas formas de resolver:
- Recomendado: usar sublinhado (sem ambiguidade, convenção comum)
#set($name_d = "hello world")Code language: PHP (php)
- Delimitar a variável com chaves (compatível com nomes que possuem hífen)
#set(${name-d} = "hello world")
${name-d}Code language: PHP (php)
Comparativo exemplos válidos / inválidos
# ✅ Válido
#set($name_d = "sublinhado")
#set($name12d = "inicia com letra mais números")
#set(${name-1_2d} = "hífen exige chaves")
# ❌ Hífen direto sem chaves → erro de análise
#set($name-d = "Erro!")
#set($name-1_2d = "Erro!")Code language: PHP (php)
3. Regras de escrita da sintaxe #set
Forma padrão (espaços ao redor dos parênteses são flexíveis, recomenda‑se manter estilo consistente)
#set($nomeVariavel = "valor")Code language: PHP (php)
Strings precisam estar dentro de aspas duplas; mantenha espaços ao redor do sinal de igual para melhor legibilidade.
Comentários
Previous: Reutilização de templates
Next: Iterar coleções