Webサイトにおける最も一般的な重大な脆弱性は、クロスサイト・スクリプティング(XSS)です。 これは、攻撃者が悪意のあるスクリプトをページに挿入し、疑うことを知らないユーザーのブラウザで実行させることができます。 XSSは、ページを改ざんしたり、機密情報を取得したり、ユーザーの身元を盗んだりすることができます。
テンプレートシステムは、XSSに対する防御に失敗しています。Latteは、文脈依存のエスケープ機能により、効果的な防御を行うことができる唯一のシステムです。
安全なウェブサイトを望むなら、誰でもLatteを使う。
出典Acunetix社 Web脆弱性レポート
いくつかの異なるコンテキストで変数$text
を自動的にエスケープする例(一番上のテンプレートを編集することができます)。
$text = "O'Neill"- をテキストで表示する。テキスト$textで
- をテキストで表示します。オニール- を属性で指定します。 title='O'Neill'
冗談ではなく、あなたはすでにラテ語を知っています。その中でどのように式を書くかも知っています。実際、PHPと全く同じように書かれています。 ですから、Latteでどのように書けばいいのか考える必要はありません。ドキュメントを見る必要もありません。 他の言語を学ぶ必要もありません。ただPHPのように書けばいいのです。 Latteの構文についての詳細
LatteはPHPをベースにしていますが、TwigはPythonをベースにしています。Latteのデザイナーは、2つの異なる規約を常に切り替える必要がありません。
例えば、テンプレートのfor person in people
、PHPのforeach $people as $person
間です。
Latteには一つの区切り記号{...}
あるので、どこで{% %}
使い、どこで{{ }}
使うかを考える必要もないのです。
Twig to Latte tool を試してみてください。
この機能はユーザーから好評です。私たちはこれを「n:attributes」と呼んでいます。{if} ... {/if}
..のような、HTML要素を包む対になるタグはすべて、そのn:if属性として書くことができます。{if} ... {/if}
ように、HTML要素を包むペアタグは、そのn:if
属性として記述することができる。
これは非常に効率的な記法である.属性はinner-
tag-
接頭辞を持つこともでき、その場合、動作はそれぞれ要素の内側で、開始と終了のHTMLタグに適用されます。
n-attributesの詳細
n:属性を使う。
そして、それがなくても同じ。
LatteはHTMLを理解する次世代テンプレートシステムです。他のシステムが文字の束しか見ていないのに対し、LatteはHTMLの要素を見ています。 これが「文脈依存のエスケープ」や「n:属性」といった驚くべき機能を備えている理由です。
洗練されたテンプレートの「再利用と継承」メカニズムにより、各テンプレートには固有のコンテンツのみが含まれ、繰り返される要素や構造は再利用されるため、生産性が向上します。
Latteはフードのすぐ下に装甲されたバンカーを備えています。これはサンドボックスモードと呼ばれ、ユーザー自身が編集したテンプレートなど、信頼できないソースからテンプレートを隔離します。 タグやフィルター、関数、メソッドなどへのアクセスも制限されます。「どうやって使うんだ?
Latteは、作業と同時にテンプレートを最適なPHPコードにコンパイルします。だから、まるで純粋にPHPで作成したかのような速さです。 コンパイルされたPHPコードは明瞭で、デバッグが容易です。テンプレートは、ソースファイルを変更するたびに自動的に再コンパイルされます。
Latteの開発には18年以上の歴史があります。そのため、私たちが提供するライブラリは、非常に成熟し、安定しており、広く使用されています。また、多くのグローバル企業や重要なウェブサイトから信頼を得ています。 「Latteを使う人、信頼する人は?
読者は、ドキュメントのわかりやすさや完成度を高く評価しています。快適な読書をお楽しみください。
Latteはオープンソースで、完全に無料で使用することができます。