Laravel - 在刀片模板中调用Crypt :: decrypt()

时间:2017-03-29 08:04:12

标签: php encryption laravel-5 datatables

我正在使用datatables服务器端从2个表中获取所有数据并显示它们。我得到的一个值是在数据库中加密的。

在显示刀片模板之前,有没有办法解密此值?

我正在使用

编辑表格的其他值
"mRender": function (data, type, full) {}

尝试使用Illuminate\Support\Facades\Crypt::decrypt($value),但没有结果。

2 个答案:

答案 0 :(得分:1)

full[5]是一个javascript变量,如果你将它传递给Crypt::decrypt()它不会知道它是一个javascript变量,而是一个php常量,因为它在<?php ?>内。

您需要按照希望在数据表中显示的方式“重建”数据。

为此,请使用editColumn method

Route::get('/serverSideSymv', ['as' => 'serverSideSymv', 'uses' => function () {
    $symv = App\Symvolaia::Select('table1.*')->join('table2', 'table1.insurancecompanyid', '=', 'table2.id')->join('table3', 'table1.simvalomenos', '=', 'table3.kodikos_pelati')->select('filed1,field2,field3,......');
    return Datatables::of($symv)
    ->editColumn('your_column', function($data) {
        return Illuminate\Support\Facades\Crypt::decrypt($data->your_column);
    })
    ->make();
});

答案 1 :(得分:0)

我得到如下解决方案。

{{ \Crypt::decrypt($var) }}