facebook twitter hatena line email

「Php/laravel/laravel5/cache」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(htmlcacheをする)
(prefix)
 
(同じ利用者による、間の2版が非表示)
行30: 行30:
 
  Cache::forget('name');
 
  Cache::forget('name');
  
==htmlcacheをする==
+
==接頭key==
namespace App\Http\Controllers;
+
vi config/cache.php
  use App\Http\Requests;
+
  'prefix' => 'laravel_1',
use Illuminate\Http\Request;
+
自動で読み設定はしてくれないので以下をcache_keyに追加する
  use Illuminate\Support\Facades\Cache;
+
  \Config::get('cache.prefix');
class DebugController extends Controller
+
{
+
    public function index()
+
    {
+
        $cacheId = md5(__CLASS__);
+
        if (Cache::has($cacheId)) {
+
            return Cache::get($cacheId);
+
        }
+
        $data = ["デバッグ"];
+
        $html = view('debug', $data)->render();
+
        Cache::put($cacheId, $html, 10);
+
        return $html;
+
    }
+
}
+
  
 
==公式==
 
==公式==
 
https://readouble.com/laravel/5/1/ja/cache.html
 
https://readouble.com/laravel/5/1/ja/cache.html

2016年8月15日 (月) 10:42時点における最新版

各種キャッシュ

redis, memcache, file, databaseなど選べる

設定

例としてmemcacheを確認

vi config/cache.php
- 'default' => env('CACHE_DRIVER', 'file'),
+ 'default' => env('CACHE_DRIVER', 'memcached'),
       'memcached' => [
           'driver' => 'memcached',
           'servers' => [
               [
                   'host' => env('MEMCACHED_HOST', '127.0.0.1'),
                   'port' => env('MEMCACHED_PORT', 11211),
                   'weight' => 100,
               ],
           ],
       ],

各種処理

use Illuminate\Support\Facades\Cache;
// 保存
Cache::put('name', "tarou", 10); // 10分
// 取得
echo Cache::get('name'); // tarou
// 保持確認
if (Cache::has('name')) {
}
// 削除
Cache::forget('name');

接頭key

vi config/cache.php

'prefix' => 'laravel_1',

自動で読み設定はしてくれないので以下をcache_keyに追加する

\Config::get('cache.prefix');

公式

https://readouble.com/laravel/5/1/ja/cache.html