ホームページ  >  記事  >  バックエンド開発  >  php—Smarty キャッシュ 2 (26)

php—Smarty キャッシュ 2 (26)

WBOY
WBOYオリジナル
2016-06-13 12:19:27768ブラウズ

php—Smarty-caching 2 (26)

ページ内では、一部のデータがキャッシュされ、一部のデータはキャッシュされません。これは部分キャッシュです

l $smarty->assign(“ var”, “ value”, true)

3 番目のパラメーター: キャッシュしないかどうかを示します

l {$var nocache=true}

nocache パラメーターは、テンプレート変数

l {nocache}{/nocache}

nocache タグのペアを使用します。間にあるコンテンツはすべてキャッシュされません

キャッシュ ファイル: 名前はファイルに直接書き込まれ、ローカル キャッシュ機能を実装するには毎回動的に経過時間を読み取る必要があることがわかりました

名前と年齢の値を組み合わせてみます。ページ上で発生する変数に注意してください。名前は変更されず、年齢は変化します。

7. 単一ページの複数のキャッシュ

http://localhost/news.php?id=100

ID 100 のニュースを表示

アクセス後、このテンプレートのキャッシュ ファイルが生成され、 ID 100 のニュースはキャッシュされます

http://localhost/news .php?id=80

ID 80 のニュースを表示します

この時点で、以前のキャッシュ ファイルが表示されます

l $smarty->caching= true

キャッシュ メカニズムを有効にする

l $smarty->display("tpl", "cacheid) ")

2 番目のパラメータは、特定のキャッシュであるキャッシュ ID を表します。ファイルの唯一の標準

コード:

この URL を使用してそれぞれにアクセスします:

Demo07.php?id=10

Demo07.php?id=83

Demo07.php?id=96

その後、キャッシュ ディレクトリに次のようなキャッシュ ファイルがいくつか生成されていることがわかりました。

ファイル名 ^ より前の内容はキャッシュ ID です。キャッシュ ファイルの一意の識別子。

キャッシュ ファイルをクリアするにはどうすればよいですか?

$smarty->clearCache('demo07.html');

このように書くと、demo07 テンプレートのすべてのキャッシュ ファイルがクリアされます

$smarty-> ('demo07.html',83)

このように書くと、demo07 テンプレート

8 に対応する ID 83 のキャッシュ ファイルを削除することを意味します。 http://localhost/news.php?kid=10&page=8

は、ニュース カテゴリ ID 10 のニュース タイトルを表示し、8 ページ目のデータを表示することを意味します。キャッシュするにはどうすればよいですか?

l $smarty->caching=true

キャッシュを有効にする

l $smarty->display("tpl", $id1."|".$ id2 )

キャッシュ ID を設定し、| を使用して接続し、キャッシュ コレクションを示します

次の URL を実行します:

Deo08.php?kid=13&page=2

Deo08.php?kid=25&page=8

Deo08.php?kid=2&page= 58

キャッシュディレクトリに複数のキャッシュファイルが生成されていることが分かりました

実際には、取得したパラメータをすべて | で接続して新しいキャッシュファイルを生成することを意味します。キャッシュ ファイル

MVC での Smarty の適用

1. MVC1. M: モデル

2. V: ビュー

3. C: コントローラー

以前の View コンポーネントを Smarty

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。