ホームページ > バックエンド開発 > PHPチュートリアル > PHP の最も単純なテンプレート エンジンの 1 つ

PHP の最も単純なテンプレート エンジンの 1 つ

WBOY
リリース: 2016-07-25 09:08:51
オリジナル
1203 人が閲覧しました
自作の型板ガイド。
  1. define('APP_PATH', __DIR__);
  2. class Template{
  3. private static $_vars;
  4. private static $_path;
  5. private static $_prefix;
  6. private function __construct() {}
  7. public静的関数 init($path = null) {
  8. if(isset($path)&&($path!='')) self::$_path=APP_PATH.'/templates/'.$path.'/';
  9. else self::$_path = APP_PATH.'/templates/';
  10. self::$_vars = array();
  11. }
  12. パブリック静的関数 set_path($path) {
  13. self::$_path = $path;
  14. }
  15. パブリック静的関数 set_prefix($prefix) {
  16. self::$_prefix = $prefix;
  17. }
  18. パブリック静的関数assign($key, $value = null)
  19. { if(!isset(self::$_vars)) self::init();
  20. if (is_array($key)) self::$_vars = array_merge(self: :$_vars,$key);
  21. elseif (($key != '')&&(isset($value)))
  22. self::$_vars[$key] = $value;
  23. }
  24. public static function fetch( $file) {
  25. if(!isset(self::$_vars)) self::init();
  26. if(count(self::$_vars)>0)
  27. { extract(self::$_vars, EXTR_PREFIX_ALL,self::$_prefix);
  28. self::$_vars = array();
  29. }
  30. ob_start();
  31. self::$_path を含めます。 $file ;
  32. $contents = ob_get_contents();
  33. ob_end_clean();
  34. self::$_path = null;
  35. return preg_replace('!s+!', ' ', $contents);
  36. }
  37. }
  38. ?>
复制代


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