thinkphp 変数のパブリック出力

WBOY
リリース: 2023-03-02 11:58:01
オリジナル
1545 人が閲覧しました

私自身で小さなプロジェクトを (thinkphp フレームワークを使用して) 実行しようとしましたが、テンプレートの割り当てに関して問題が発生しました。各テンプレートにはヘッダー がありますが、問題はありません。問題は、ヘッダー内に、それを参照する各テンプレートに出力する必要がある変数があります。この変数は、コントローラー内のメソッドによって生成されます:
public function header(){

リーリー

すべてのテンプレート コントローラーにこのメソッドを 1 回記述することは不可能です。もちろん、このメソッドをテンプレート コントローラーの親クラス コントローラーに配置することはできません。
ThinkControllerを使用する;

クラス IndexController は、Controller を拡張します

{

リーリー

}
上記の変数 {$lo_id} を各テンプレートに出力する方法は次のとおりです。

それとも、要件を明確に表現していなかったのでしょうか。つまり、各テンプレートは特定の変数を出力できます



返信内容:

私自身で小さなプロジェクトを (thinkphp フレームワークを使用して) 実行しようとしましたが、テンプレートの割り当てに関して問題が発生しました。各テンプレートにはヘッダー がありますが、問題はありません。問題は、ヘッダー内に、それを参照する各テンプレートに出力する必要がある変数があります。この変数は、コントローラー内のメソッドによって生成されます:

public function header(){

リーリー

すべてのテンプレート コントローラーにこのメソッドを 1 回記述することは不可能です。もちろん、このメソッドをテンプレート コントローラーの親クラス コントローラーに配置することはできません。
ThinkControllerを使用する;

クラス IndexController は、Controller を拡張します
{
リーリー

}

上記の変数 {$lo_id} を各テンプレートに出力する方法は次のとおりです。

それとも、要件を明確に表現していなかったのでしょうか。つまり、各テンプレートは特定の変数を出力できます


共通部分を親クラスに入れるとサブクラスが継承できるようになります

リーリー リーリー

1. すべてのページに $this->assign('data',$data); メソッドがあります。

この変数をアタッチするだけで、別のメソッドを記述する必要はありません

2. 基本クラスを記述します。コントローラーを継承し、このメソッドを実装すると、ページは基本クラスを継承するため、再度記述する必要はありません

(コード例はすでに 1 階に示されています)

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート