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

PythonでGUIアプリ開発「PyQt」を使った感想

Python

2019.07.18

「二段階認証?」という方も 5分で覚える パスワードレス WebAuthnのまとめ

JavaScript

2019.07.07

上級者向け JavaScript 問題集 「javascript-questions」日本語翻訳担当してます。

JavaScript

2019.06.22

Wordpress サイトで、長時間 500 Internal Server Error発生。解決した方法とは。

WordPress

2019.06.18

Ubuntu 18.04 LTSで OpenGL開発

ubuntu

2019.05.20

MacOS Mojave (10.14.4)の Xcode に、過去のMacOSのSDKをインストール

C++

2019.05.19

クローンソフトの「EaseUS Disk Copy」を使って、OSのバックアップを取ってみた。

tool

2019.05.06

Rails5 gemでmysql2が インストールできない

Ruby

2019.05.05

平成最後のお買い物!!「Logicool MX Master 2 Wireless Mouse」と「K780 マルチデバイス BLUETOOTH® キーボード」で快適PC生活。

ubuntu

2019.04.27

Amazon 87時間のビックセール タイムセール祭りで購入したもの

イベント

2019.04.23

Androidに Linuxを簡単にインストールするアプリ「UserLAnd」

Linux

2019.04.16

SPAサイトでの認証認可 JWT✗Rails5✗Nuxt.js

JavaScript

2019.03.24

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

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

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

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

FOLLOW US