このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

Laravel4でもSmartyを使用したい!

PHP

2014.11.20

この記事は最終更新日から1年以上が経過しています。

どもです。

Laravel4でもSmartyを使用したい使用したい使用….。。。

そう。Laravelはデフォルトで bladeテンプレートが備わっているのですが、別のテンプレートエンジンが使いたい。

といったわがままを言って見たい時期だったりもする訳ですよ。

使い慣れたテンプレートエンジンが良かったりしますよねー。

できるのかなー。と思っていたら、

.

..

..

できますねー!! ><

こちらとか

http://packalyst.com/packages/package/comnect/smarty

http://blog.comnect.jp.net/blog/76

こちらを参考です。

インストール

for Laravel4.2

"require": {
    "comnect/smarty": "2.*"
},

for Laravel4.1

"require": {
    "comnect/smarty": "1.*"
},

とありますので、御使いのバージョンに合わせcomposer.jsonに追加します。

こんな感じで

"require": { 
    "laravel/framework": "4.1.*",
    "comnect/smarty": "1.0" 
},

そして、Laravelのapp/config/app.phpのprovidersに以下を追加して

'Comnect\Smarty\SmartyServiceProvider'

コマンドラインでcomposer updateを入力、インストールを行います。

composer update

インストールが完了したら、artisanコマンドでコンフィグをパブリッシュ。

php artisan config:publish comnect/smarty

実行すると app/conig/packagesの下にcomnect/smarty/config.php といった、smartyのコンフィグと同様のコンフィグファイルが作成されます。

<?php
// smarty configure
return [
    // smarty file extension
    'extension' => 'tpl',
    //
    'debugging' => false,
    // use cache
    'caching' => false,
    //
    'cache_lifetime' => 120,
    //
    'compile_check' => false,
    // delimiters
    // default "{$smarty}"
    'left_delimiter' => '{',
    'right_delimiter' => '}',
    // path info
    'template_path' => app_path() . '/views',
    'cache_path' => app_path() . '/storage/smarty/cache',
    'compile_path' => app_path() . '/storage/smarty/compile',
    'plugins_paths' => [
    app_path() . '/views/smarty/plugins',
    ]
];

デフォルトではapp/storageの下にcacheとcompileが出力されますので、app/storageに必ず実行権限を与えてください。

ひとまずこれで使用可能になりました。

使用方法

特に変更しなくても使用できます。

return View::make('home');

views配下にsmartyファイルがあればそれをテンプレートと使用し、なければ通常通りbladeテンプレートかphpファイルを使用するようになっております。

なので、bladeテンプレートもそのまま併用も可能となっております。優秀!

smartyのメソッドも利用可能です。

use smarty method

View::assign('word', 'hello');
View::clearAllAssign();

値も一緒に渡したい場合

return View::make('template', ['values' => $values]);

withでも同じです

return View::make('template')->with('values', $values);

Artisan

artisanコマンドでキャッシュをクリアしたい場合は

cache clear
php artisan comnect:smarty-cacheclear

Options

--file (-f) specify file

 

--time (-t) clear all of the files that are specified duration time

–file (-f) specify file::削除したいファイルを指定

–time (-t) clear all of the files that are specified duration time::cacheの経過時間を指定して削除

remove compile class

また、コンパイルファイルの削除も行えます。

php artisan comnect:smarty-clear-compiled

Options

--file (-f) specify file

–file (-f) specify file:削除したいファイルを指定

その他、smarty modifier, sumarty functionなどすべて使用可能となっております。ただし、配列で記述する場合はショートシンタックスのみ対応のようです。

いやー助かりますねー。よろしければー。ではでは。

Comment

Related Article

php 7.4にアップデート

2023.12.24

Laravel 4 を PHP 7 環境へ移行したお話。

2018.06.10

PHP 簡易アクセスログ 出力

2016.04.29

Laravelを 別環境に移動したら画面が真っ白に。MacにComposer、php mcrypt 等をインストールしたお話。

2015.10.10

遅れましたが..あけましておめでとうございます!2015年は Laravelで画像処理。からということで。

2015.01.08

IDE phpstorm, IntelliJ IDEAの Database接続が便利すぎる件(Vagrant + IntelliJ IDEA でMySQL操作)

2014.11.29

Laravel4でもSmartyを使用したい!

2014.11.20

人気急上昇!PHPフレームワーク「Laravel」を使ってみました。簡易会員サイト作成編

2014.09.24

Laravel4 パーミッションエラー Vagrant パーミッションが変更しない件

2014.08.24

【CentOS6】 PHP5.3からPHP5.5にバージョンアップしました

2014.08.11

CATEGORY LIST

LATEST NEWS

Rustでつくる ふっかつのじゅもん

Rust

2025.04.29

Tauri(Rust) × AI で作る GitGUIクライアントアプリ その5

Rust

2025.04.14

う、動くぞ! Mac mini Apple M4 Pro で PS3ソフトを遊ぶ。RPCS3 Mac版を起動

Game

2025.04.12

Tauri(Rust) × AI で作る GitGUIクライアントアプリ その4

Rust

2025.04.10

Tauri(Rust) × AI で作る GitGUIクライアントアプリ その3

Rust

2025.04.08

Tauri(Rust) × AI で作る GitGUIクライアントアプリ その2

Rust

2025.04.07

時代を先取りし過ぎた ニューラルネットワークが導入されたゲーム『がんばれ森川君2号』を令和に嗜んでみる。

Game

2025.04.06

Tauri(Rust) × AI で作る GitGUIクライアントアプリ その1

Rust

2025.04.05

keyring-rsで、Macのキーチェーンに登録する。

Rust

2025.04.04

RustとWebAssemblyによるゲーム開発 Webpack5対応

Rust

2025.03.27

Rustで創る MOS 6502 CPU その3 (Cursorと共に)

Rust

2025.02.24

あけましておめでとうございます(24日経過)

イベント

2025.01.24

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US