まったく同じ構文を使用する MTHAML の PHP ポートを使用しています。内部で変数を使用するときに変数に触れないように MTHAML に指示するにはどうすればよいですか
https://github.com/arnaud-lb/MtHaml
たとえば、これ
:javascript
if (#{$response)} !== "") {
show_error("#{$response}");
}
これに変換されます
<script type="text/javascript">
//<![CDATA[
if (<?php echo htmlspecialchars(escape("$response"),ENT_QUOTES,'UTF-8'); ?> !== "") {
show_error("<?php echo htmlspecialchars($response,ENT_QUOTES,'UTF-8'); ?>");
}
//]]>
</script>
そのため、レンダリングされた JavaScript で PHP ブール変数が空白として表示されるか、PHP 変数が引用符付きの文字列である場合、引用符は " に変換されてしまいます。