Velocity (1.7) を使用して PHP コードを生成しています。
厳密な例外を使用して Velocity をセットアップしました。これは少し役立ちます。
p.setProperty(RuntimeConstants.RUNTIME_REFERENCES_STRICT_ESCAPE, "true");
しかし、テンプレートの次の行で問題が発生しています。
\$result['${attribute.Name}'] = \$this->${attribute.Name};
出力は次のとおりです。
$result['${attribute.Name}'] = $this->color;
ただし、次のようにする必要があります。
$result['color'] = $this->color;
編集:
問題を解決する方法を見つけました:
#set($d = "$")
${d}result['${attribute.Name}'] = \$this->${attribute.Name};
しかし、Velocity の潜在的なバグを解決するためだけに追加の変数を導入するソリューションは好きではありません。