ホームページ >バックエンド開発 >PHPチュートリアル >この文をどう理解するか
//コンテンツをテンプレートに投げる
Tpl::output('brand_list',$brand_list);
主に、brand_list は値のセットなのか、それとも値なのか、という気がします。テンプレートにスローされるため、このように再生する必要はありません
出力メソッドは次のとおりです
/**
* 変数をスローします
*
* @parammixed $output
* @param void
*/
public static function Output($output,$input =''){
self::getInstance( );
self::$output_value[$output] = $input; }
/**
* インスタンス化
*
* @return obj
*/
public static function getInstance(){
if ( self::$instance === null || !(self::$instanceinstanceofTpl)){
self::$instance = new Tpl(); }
クラスを返します。 Tpl{
/**
* 単一オブジェクト
*/
プライベート静的 $instance = null;
/**
* テンプレートの内容の配列を出力します。他の変数をプログラムからテンプレートに直接出力することはできません
*/
プライベート静的 $output_value = array();
/**
* テンプレートパスの設定
*/
プライベート静的$tpl_dir='';
/**
*デフォルトのレイアウト
*/
public static function getInstance( ){
if (self::$instance = == null || !(self::$instance instanceof Tpl)){
self::$instance = new Tpl(); }
return self::$instance;
}
主に上記のことを理解したいのですが、これらの関数は値をスローするためにどのようなロジックを使用していますか? それはテンプレートに含まれていますか? 読んだ後、ロジックが理解できません
に返信してください。ディスカッション (解決策)
Tpl::output('brand_list',$brand_list) ;
の 'brand_list' は単一の値です (一重引用符で囲まれていることが分かりますか?) )、データ項目を表します。このようにして、brand_list という名前をテンプレートで使用してデータを取得できます
public static function output($output,$input=''){ self::getInstance(); self::$output_value[$output] = $input;}の定義から、$output が配列の関連付けられたキーとして表示されることもわかります。明らかに、関連付けられたキーはスカラーのみであることがわかります。 。配列 (オブジェクト) を関連付けられたキーとして使用することはできません