2017-12-31 254 views
1

私はLaravel 5.4と私のコントローラの暗号化/復号化メソッドを使用してユーザーデータを保護しています。Laravel暗号化データチェック

$ p-contentが暗号化されていないとエラーになります。私は、コンテンツを暗号化するかどうかを選択した天気にユーザーを欲しいと思います。つまり、この選択肢を使用してコンテンツを検出するか、データベースに別の列を追加する必要があります。理想的には、コンテンツが暗号化されているかどうかを確認するだけです。

public function index() 
{ 
    $posts = Post::orderBy('id', 'desc')->get(); 

    foreach ($posts as $p) { 
      **$p->content = decrypt($p->content);** 
    } 

    return view('posts.index', ['posts' => $posts]); 
} 

答えて

1

is_encryptedのような表にフラグを追加できます。

それともdecryptメソッドによってスローされた例外をキャッチできます。

foreach ($posts as $p) { 
    try { 
     $p->content = decrypt($p->content); 
    } catch(\RuntimeException $e) { 
     // Content is not encrypted. 
    } 
}