この記事では、yii、CI、yafフレームワーク+smartyテンプレートの使用法を例とともに説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
最近、smartyと連携して各テンプレートのパフォーマンスをテストする必要があるフレームワークのパフォーマンステストを放り込んでいたので、いろいろやったのでまとめておきます。 kohanaフレームワーク+smartyテンプレートについては以前に書いたのでここでは繰り返しません。
1. yii フレームワーク + Smarty テンプレート
yii は viewRenderer コンポーネントをカバーします。
1.1、yii フレームワークをダウンロードして解凍し、smarty フレームワークをダウンロードして解凍し、smarty/libs フォルダーを yii フレームワークの application/protected/vendors にコピーし、smarty の名前を変更します。
1.2、yii設定ファイルmain.php
リーリーここで、batman は、index.php で定義したエイリアスです。
リーリー1.3、protected/extensions/
に新しい SmartyViewRender.php を作成します。 リーリー1.4、検証済み
新しいHelloController.phpを作成します
リーリー新しい word.html を作成する
リーリー2. CI フレームワーク + Smarty テンプレート
smarty を通常のライブラリとして使用する方法はインターネット上に多数あります。これを使用する場合、コントローラーのコードは次のようになります。 リーリー
この方法は、CIに付属のテンプレートを使用する方法と似ています
コードをコピーします コードは次のとおりです: $this->load->view();
不調和なのでシリーズが必要です
コードをコピーします コードは次のとおりです: $this->smarty->assign();
このステートメントは面倒なだけでなく、元の CI のシンプルさと美しさを破壊するため、思い切って破棄します。
2.1、条件:
公式 Web サイトにアクセスして、CI フレームワークと Smarty テンプレートをダウンロードします。
2.2、CI が実行できることを確認してください
CI フレームワークを Web サイトとディレクトリに抽出し、最初に Smarty テンプレートなしで「hello world」を出力するコントローラーを作成します。
2.3、smartyの紹介
smarty を解凍し、libs フォルダーを application/third_paty に移動し、libs の名前を Smarty に変更しても問題ありません。ここでは、smarty という名前にします。
2.4、ローダークラスのview()メソッドをオーバーライドします
view() メソッドは Loader クラスにあるため、Loader の view() メソッドをオーバーライドする必要があります。
まず $this->load->view() がどのように機能するかを見てみましょう? CI_Controller クラスのコンストラクターに次の行があります
コードをコピーします コードは次のとおりです: $this->load =&load_class('Loader', 'core');
load_class 関数は、まず application/core で config_item('subclass_prefix').Loader.php ファイルを探します。見つからない場合は、system/core で Loader.php を探します。 config_item('subclass_prefix') は、構成ファイルに記述された CI コア クラスから継承するサブクラスのプレフィックスです。デフォルト値「MY_」を使用しています。ファイルを見つけたら、そのファイルを要求し、新しい MY_Loader (application/core/MY_Loader.php が存在する場合)、または新しい Loader に値を $this->load に割り当てます。
リーリー
template_extを「.html」に設定したので大丈夫です。確認してみましょう。2.5、検証済み
コントローラーの下にhome.phpを作成します
リーリー
ビューの下にindex_2.htmlを作成しますリーリー
それでは、結果を試してみましょう。
3. yaf フレームワーク + Smarty テンプレート
yaf はブート ファイル Bootstrap.php を使用して Smarty をロードします。3.1、ブートストラップの使用
index.phpで
を使用する
コードをコピーします コードは次のとおりです: $app->bootstrap()->run();
3.2、smarty を application/Bootstrap.php ファイルにインポートします。
リーリー
3.3、Smarty_Adapterクラスを追加しますsmarty を解凍してアプリケーション/ライブラリ フォルダーに置き、名前を Smarty に変更します。 Smarty の下に新しい Adaptor.php を作成し、Smarty.class.php が Smarty/libs/ の下にあることを確認します。 Adaptor.php の内容:
リーリー
3.4、smarty設定ファイル。conf/application.ini ファイルをもう一度見てみましょう
リーリー
3.5、検証済み新しいコントローラーを作成してメソッドを追加します:
リーリー
新しいテンプレート two.tpl を作成しますリーリー
この記事が PHP プログラミングのすべての人に役立つことを願っています。興味があるかもしれない記事: