4

私は現在、生産現場でSmartyテンプレートシステムを使用していますが、このテンプレートエンジンを使用することで、パフォーマンスがどれだけ低下するのか興味があります。より速い選択肢はありますか?そのようなテンプレートシステムを使用する必要がないようにコーディングする方法はありますか?ありがとうございました!

4

4 に答える 4

8

コードをプレゼンテーションから分離するために外部のテンプレートエンジンは必要ありません。必要なのはそのためのロジックだけです。PHP自体はテンプレートエンジンとしては完全に問題ありません。PHPコードとHTMLを混在させないでください。テンプレートエンジンは、プログラマーでないWebデザイナーにとっては習得が簡単です。

于 2009-11-23T20:45:25.150 に答える
1

明白な答え-PHPを使用するだけです。Smartyを使用することを好みますが、多くの人がそれはテンプレート言語であると主張しています。

Smartyは、PHP開発者に、ビジネスロジック、データベース呼び出しなどをプレゼンテーションから分離するように強制します。ただし、規律のあるPHP開発者は、PHPをテンプレート言語として使用し、プレゼンテーションを分離しておくことができます。

于 2009-11-23T20:40:52.380 に答える
1

また、XSL変換を使用して、ロジックをプレゼンテーションから分離することもできます。XSLT-transformerはXMLツリーを受け取り、XSLT変換を使用してプレゼンテーションを生成してHTML出力を生成します。

しかし、XSLTは学習が非常に難しく、XMLとXPathの知識が必要です。最近のプロジェクトでSmartyを使用していますが、現在のプロジェクトはXSLTテンプレートに基づいて構築されているため、XSLTを学ぶ必要がありました。Smartyとその祖先であるFastTemplateは、私にはもっと複雑に思えます。ただし、XSLTは、ロジックをプレゼンテーションから分離するもう1つの方法です。

XMLとXSLTの利点は、これらのテクノロジーがPHPだけでなく、さまざまな言語で使用されることです。

さらに、もう1つのテンプレートエンジンがあります-PHPテンプレートエンジン。DrupalCMSのデフォルトのテンプレートエンジンです。私はDrupalの専門家ではないので、それについては何も言えません。ただし、PHP構文を使用しているため、習得は非常に簡単です。

XSLTについてはここで読むことができます。

私の答えがあなたのお役に立てば幸いです。

于 2009-12-13T01:03:58.813 に答える
0

Pstttを試すことができます!PHP用のテンプレートエンジン

完全なソースコードはこちらhttp://github.com/givanz/psttt

于 2010-09-19T19:11:56.137 に答える