タグ

phpとtemplateに関するtarchanのブックマーク (6)

  • 昨今のPHPのテンプレートエンジンについて調べて共通インタフェースを作った

    こんにちは。 突然ですが、FuelPHPのビューを書く場合、デフォルトでは生PHP + Viewクラスの構成だと思います。 Viewクラス自体がエスケープ機構を備えているのでXSSは塞げるんですが、生のPHPで書くとisset地獄だったりifが増えたりと不便なところが多く、テンプレートエンジン使いたいと思うことが多々あります。 そんなFuelPHPにはparserというパッケージがあるので、設定を変更すればテンプレートエンジンが簡単に利用できます。 fuelphpでhaml導入したった – ド忘れ防止雑記帳 が、しかし 対応しているテンプレートエンジンの一覧を見てみると、どれも古い。とにかく古い。 良く言えば枯れてるんですが、調べてみると メンテナンスされてないだろこれ… という感じのものが結構ありました。 ということで自分の知見をアップデートするため昨今のテンプレートエンジンについて調べ

  • 完全版! テンプレートエンジン チートシート (blade, twig, volt, smarty, mustache, の比較もあるよ) - sekaie engineers' blog

    まいど。セカイエでエンジニアやっている @M_Ishikawa こと石川と申します。好きな言葉はちくわ大明神です。 この記事は セカイエ Advent Calendar 2015 8日目の記事です。 Advent Calendarに参加するにあたってネタが思い当たらなかったのですが、最近ちょっと変わった経験をしたのを思い出しました。 それというのも、この半年間で、 Laravel Phalcon FuelPHP CakePHP Ethna と沢山のPHPフレームワークを同時並行して開発していたのです。 Ethna長いことやってたのにこの短期間でlaravelとcakephpとfalconとfuelphpと並行して扱ってて結構混乱。テンプレートエンジンがsmarty, blade, twig, volt, mustacheと全部異なるのも混乱。— Masayuki Ishikawa (@M_

    完全版! テンプレートエンジン チートシート (blade, twig, volt, smarty, mustache, の比較もあるよ) - sekaie engineers' blog
  • PHP とテンプレートエンジン (Smarty/patTemplate)

    PHPでは、HTMLページ内に<?php ?>タグで括る事によって、 HTML(デザイン部分)とプログラム(ロジック部分)を同一ページに記述できます。しかし、同じファイル内にデザイン部分とロジック部分を記述するとメンテナンスが非常に困難となります。Java でも JSP で同じような問題が発生し、JSP 2.0 でカスタムタグの導入により ロジック部を分離することができ、Struts というフレームワークまで生まれました。 PHP では、Template Engine という技術によってデザイン部分とロジック部分を分離させメンテナンスを向上させることができるようになりました。このことで、デザイナーとプログラマーが同時に作業を行えるようにもなりました。この Template Engine は、それほど作るのに難しくはありません。しかし、自分で創って自分でメンテナンスしていくのは大変というので

  • 世界のPHPテンプレートエンジン、トップ25

    PHPテンプレートエンジンというのは、PHPによるプログラム部分と、HTMLによるデザイン部分を分離することによって、メンテナンス性を向上させることができる、というもの。 プログラムするPHPを扱う側の人にとって見れば、デザイナーの仕上がりを待たずにソースの修正などが可能になり、デザイナー側から見れば、PHPの知識が無くてもテンプレートファイルの部分を変更するだけでデザイン可能になる、というわけ。 そんなPHPテンプレートエンジンの中でも特に有名なトップ25を見てみましょう。 Jaslabs >> Top 25 PHP template engines 中には知らないのも混じってますが、それだけいろいろあるよ、ということで。 Smarty 動作速度の高速さとフレキシブルなところがウリ、かなり有名。 Heyes Template Class とても使うのが簡単で、パワフルらしい。ページレイア

    世界のPHPテンプレートエンジン、トップ25
  • 60行で作るPHP用テンプレートエンジン

    唐突に、PHP用のテンプレートエンジンを作ってみる。 方針: ふつうのPHPファイルをテンプレートとして使う。 <?php echo $var; ?> は面倒なので #{$var} と書けるようにする。 <?php echo htmlspecialchars($var); ?> はもっと面倒なので %{$var} と書けるようにする。 ついでにXML宣言も <<?php ?>?xml ... に自動置換する。【追記】レイアウト機能を追加してみた コード: <?php /* * SixtyLinesTemplate.php - 60行しかないけどSmartyより速いテンプレートエンジン * * 使い方: * require_once('SixtyLinesTemplate.php'); * $TEMPLATE_DIR = 'templates'; // 省略可、パーミッションに注意 * $c

    60行で作るPHP用テンプレートエンジン
  • PEAR :: Manual :: HTML_Template_Flexy

    目次導入 --  HTML_Template_Flexy に出来ること 設定項目 --  HTML_Template_Flexy の初期設定 new HTML_Template_Flexy -- constructor$flexy->compile() -- コンパイルする必要があればマークアップを PHP にコンパイルする$flexy->outputObject() -- コントローラオブジェクトとテンプレートをマージし、結果を出力する$flexy->bufferedOutputObject() -- コントローラーオブジェクトをテンプレートとマージし、結果を返す$flexy->getElements() -- テンプレートから動的要素を取り出すnew HTML_Template_Flexy_Element -- クラスのコンストラクタ$element->setValue() -- 一般

  • 1