このサイトは、只今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

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

人気急上昇!PHPフレームワーク「Laravel」を使ってみました。 インストール 〜 起動まで。

2014.08.10

CATEGORY LIST

LATEST NEWS

Flutter - Flameでゲーム作成 (キャラクターの移動)

Flutter

2023.07.23

Flutterで作る ChatGPT Prompt Manager

Flutter

2023.07.12

【M1 Mac】Python ScrapyがImportErrorで大ハマリ。lxmlなど環境作成し対応した件。

Python

2023.05.24

ミニPC Minisforum UM773 SE/ Liteがセールみたいだったので、ポチった件

イベント

2023.04.23

AI(ChatGPT)に聞くDart言語

Dart

2023.03.12

DartパッケージでPub Pointsを満点にする

Dart

2023.03.11

Dartパッケージをサクッと作成する

Dart

2023.03.07

DartでさくっとCLIツール作成。

Dart

2023.02.28

M1Macで行う「RUSTではじめるOpenGL」

Rust

2023.02.25

SolidityとEthereumによる実践スマートコントラクト開発 書評 ~ 再構築

暗号通貨、ブロックチェーン

2023.02.10

【Unity x WebAssembly】UnityコンテンツをBlazorとFlutterでWebアプリとして扱う

Unity

2023.01.30

【nasne】M1 Mac Miniで、「torne® mobile」使用して、テレビ視聴。

mac

2022.12.31

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

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

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

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

FOLLOW US