ホームページ > バックエンド開発 > PHPチュートリアル > yii、CI、yaf フレームワーク + Smarty テンプレートの使用法、yafsmarty_PHP チュートリアル

yii、CI、yaf フレームワーク + Smarty テンプレートの使用法、yafsmarty_PHP チュートリアル

WBOY
リリース: 2016-07-12 09:02:08
オリジナル
1110 人が閲覧しました

yii、CI、yafフレームワーク+smartyテンプレートの使用法、yafsmarty

この記事では、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 のシンプルさと美しさを破壊するため、思い切って破棄します。

では、ビューをロードする CI のシンプルさと美しさを維持するにはどうすればよいでしょうか? その答えは、Loader クラスの view() メソッドをオーバーライドすることです。さて、始めましょう。

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 に割り当てます。

application/core の下に新しい MY_Loader.php ファイルを作成します

リーリー

template_extを「.html」に設定したので大丈夫です。確認してみましょう。

2.5、検証済み

コントローラーの下にhome.phpを作成します

リーリー

ビューの下にindex_2.htmlを作成します

リーリー

それでは、結果を試してみましょう。

3. yaf フレームワーク + Smarty テンプレート

yaf はブート ファイル Bootstrap.php を使用して Smarty をロードします。

3.1、ブートストラップの使用

index.phpで

を使用する
コードをコピーします コードは次のとおりです: $app->bootstrap()->run();

Bootstrap.php ファイルを紹介します

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 プログラミングのすべての人に役立つことを願っています。

興味があるかもしれない記事:

    PHP Yii フレームワークに基づく Smarty テンプレートの使用方法の詳細な説明
  • CodeIgniter での Smarty3 の基本構成の使用
  • Smarty の高度な機能を備えたオブジェクトの使用方法
  • php Smarty テンプレートの無限分類メソッドを実装する
  • smarty の簡単なアプリケーション例
  • smarty の一般的なメソッド例のまとめ
  • Thinkphp+smarty+uploadify でリフレッシュ不要のアップロードを実現する

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1086649.html技術記事 yii、CI、yaf フレームワーク + Smarty テンプレート、yafsmarty の使用方法 この記事では、yii、CI、yaf フレームワーク + Smarty テンプレートの使用方法を例とともに説明します。参考のために皆さんと共有してください。詳細は次のとおりです: 最近...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート