For Want Of A Better Word

【PHP】【Slim】テンプレートの利用

      2015/04/18

テンプレートの利用

【参考】PHPマイクロフレームワークのSlimを触ってみた – Blogaomu

Slimのテンプレートの基本的な考え方は、
①index.phpで

app->render(“テンプレートファイル名”、配列(変数名=>値));

でテンプレートに渡す。
②テンプレート側で該当の変数を使う。テンプレート側に処理を書くことも出来る。

という感じ。Cakeに近いかな。

テンプレートエンジンを利用する方法もあるようですが、それすら面倒臭いのでデフォルトで!

Slimの機能としてテンプレート間の共通部品や、Cakeのlayoutファイルのようなテンプレートの共通部分定義というのはなさそう。
まあ、phpなのでincludeするだけ。気になるなら、テンプレートエンジンを導入ですかね。

テンプレートの使い方

(1)テンプレートディレクトを作成しパスを通す。
※テンプレートディレクトリをindex.phpと同階層に作成
index.php

(2)index.phpの該当メソッドをテンプレートを使う用に修正する。
index.php

②templateを作る
templates/index.php

これでOK!

ちなみにファイル名はURLに紐づければ分かりやすいかね。

【補足】共通部品の利用

とは言っても自分で作ってincludeなりするだけ。

例)template/commonディレクトリの中にheader.php と footer.phpを作って、テンプレートからincludeする。

template
.
├── common
│   ├── footer.php
│   └── header.php
└── index.php

・ templates/index.php(controller側のindex.phpは①のまま。nameを渡す。)

一つ一つのテンプレートでincludeするの面倒くさい!
という場合は
コントローラーのindex.phpのメソッドに書いても良いし、

index.phpの本当に先頭と最後に書いちゃってもいいじゃん!
メソッド+templateではコンテンツだけ吐き出すようにして。
これがcakeのレイアウトっぽいかな。

この場合は、titleとか動的に出来ないのが問題か…

メモ、

うんうん。そうそう、この程度のが欲しかった。
長年の運用が想定されるものではキツイかもしれないけど。。
ただ、ほとんどPHPでの記述だから意外とスキルレベルを統一しやすかったりして!

次はDBの利用。

[PHP>Slim関連記事]
【PHP】【Slim】インストールー手動ダウンロード と Composer – For Want Of A Better Word
【PHP】【Slim】テンプレートの利用 – For Want Of A Better Word
【PHP】【Slim】DBの利用は自力で頑張る! – For Want Of A Better Word
【PHP】【Slim】Slim触っての感想 – For Want Of A Better Word

 - php, slim

  関連記事

アンケートOSS lime surveyを軽く使ってみてのメモ

varsion 1.92 良い所 作成できるアンケートは多岐にわたり、細かい設定 …

【PHP】【Slim】インストールー手動ダウンロード と Composer

ずーっと思ってた、CakeとかCodeIgnaitorとか、俺には多機能すぎる! …

MongoDBとPHP_リンクと個人的ポイントまとめ

=============================== リンク集 === …

[php]mail()の送信元、エラー送信先設定(from, return-path)

ちょっと整理。 設定例 [crayon-59536f54188a50385932 …

クロームでブラウザ・端末エミュレート機能の使い方。えらく見つけづらくなった。。

クロームのエミュレーターが見つけづらくなったのでメモ。 ①デベロッパーツールを開 …