Blame | Letzte Änderung | Log anzeigen | RSS feed
# Laravel.SmartySmarty Template Engine for Laravel(Support for Laravel5.x - Laravel8.x and Lumen)[](https://travis-ci.org/ytake/Laravel.Smarty)[](https://coveralls.io/r/ytake/Laravel.Smarty?branch=master)[](https://scrutinizer-ci.com/g/ytake/Laravel.Smarty/?branch=master)[](https://packagist.org/packages/ytake/laravel-smarty)[](https://packagist.org/packages/ytake/laravel-smarty)[](https://packagist.org/packages/ytake/laravel-smarty)## Installation For LaravelRequire this package with Composer```bash$ composer require ytake/laravel-smarty```or composer.json```json"require": {"ytake/laravel-smarty": "^6.0"},```*Supported Auto-Discovery(^Laravel5.5)*add Laravel.Smarty Service Providersyour config/app.php```php'providers' => [// add smarty extensionYtake\LaravelSmarty\SmartyServiceProvider::class,// add artisan commandsYtake\LaravelSmarty\SmartyConsoleServiceProvider::class,]```## Installation For LumenRequire this package with Composer```bash$ composer require ytake/laravel-smarty```or composer.json```json"require": {"ytake/laravel-smarty": "~2.0"},```register Laravel.Smarty Service Providersyour bootstrap/app.php```php$app->configure('ytake-laravel-smarty');$app->register(Ytake\LaravelSmarty\SmartyServiceProvider::class);$app->register(Ytake\LaravelSmarty\SmartyConsoleServiceProvider::class);```## Configuration### publish configuration file (for Laravel5)```bash$ php artisan vendor:publish```publish to config directoryOf Course, Blade Template can also be used to Render Engine.### configuration file (for Lumen)Copy the `vendor/ytake/laravel-smarty/src/config/ytake-laravel-smarty.php` file to your local config directory### config for Productionedit config/ytake-laravel-smarty.php```php// enabled smarty template cache'caching' => true, // default false// disabled smarty template compile'force_compile' => false, // default true(for develop)```Oradd .env file```SMARTY_CACHE=trueSMARTY_COMPILE=false```edit config/ytake-laravel-smarty.php```php'caching' => env('SMARTY_CACHING', false),'force_compile' => env('SMARTY_FORCE_COMPILE', true),```and more..!## Basiceasily use all the methods of Smarty```php// laravel5 view renderview("template.name");// Laravel blade template render(use Facades)\View::make('template', ['hello']);// use Smarty method\View::assign('word', 'hello');\View::clearAllAssign(); // smarty method```## View Composer, and View Share```php$this->app['view']->composer('index', function (View $view) {$view->with('message', 'enable smarty');});$this->app['view']->share('title', 'laravel-smarty');``````htmlHello Laravel.Smarty{$title}{$message}```## Artisansmarty's cache clear, remove compile class from Artisan(cli)### Template cache clear```bash$ php artisan ytake:smarty-clear-cache```| Options | description || ------------- | ------------- || --file (-f) | specify file || --time (-t) | clear all of the files that are specified duration time || --cache_id (-cache) | specified cache_id groups |### Remove compile file```bash$ php artisan ytake:smarty-clear-compiled```| Options | description || ------------- | ------------- || --file (-f) | specify file || --compile_id (-compile) | specified compile_id |### Template Compiler```bash$ php artisan ytake:smarty-optimize```| Options | description || ------------- | ------------- || --extension (-e) | specified smarty file extension(default: *.tpl*) || --force | compiles template files found in views directory |## Template Caching**choose file, memcached, Redis**(default file cache driver)```php// smarty cache driver "file", "memcached", "redis"'cache_driver' => 'file',// memcached servers'memcached' => [['host' => '127.0.0.1','port' => 11211,'weight' => 100],],// redis configure'redis' => [['host' => '127.0.0.1','port' => 6379,'database' => 0,],],```### example[registerFilter in ServiceProvider](https://gist.github.com/ytake/e8c834e88473ea3f10e7)[registerFilter in Controller](https://gist.github.com/ytake/1a6f1d5312b552bc83ff)[layout.sample](https://gist.github.com/ytake/11345539)[layout.extends.sample](https://gist.github.com/ytake/11345614)