Smarty は、ビジネスとロジックを分離し、実行速度が速く、PHP Web サイトで広く使用されている非常に人気のあるテンプレート システムです。
ただし、Sina App Engine (sae) へのデプロイ時に問題が発生しました。sae はクラウド コンピューティング プラットフォームとしてファイルの読み取りと書き込み操作を実行できないため、Smarty で出力されたキャッシュ ファイルを実装できません。
エラー メッセージ: 「SAE_Fatal_error: キャッチされない例外 'SmartyException' とメッセージ 'ファイル ./web/templates_c/wrt4e95555280ef1' を書き込めません」
SAE が提供する解決策は、Memcache を使用することです。まず、アプリケーションでアプリケーション管理に入り、サービス管理で Memcache の初期化を有効にします。
次に、Smarty の設定ファイルを変更します:
$smarty->compile_dir = 'saemc://smartytpl/';
$smarty->cache_dir = 'saemc://smartytpl/';
$smarty->compile_locking = false; // touch の呼び出しを禁止します。saemc は自動的に時刻を更新します。タッチは必要ありません
上記の 3 行は必須です。
このようにして、Smarty テンプレートを SAE 上で実行できます。
〃Styleひぐより抜粋