2017-01-02 102 views
0

我正在更新我的數據使用json編碼其工作正常我有密碼字段,我想保留在加密形式,但我不知道如何保存通過現場數據字段目前我正在更新數據使用json編碼(Laravel 5.3)更新數據字段字段

$student_data->fill([ 

      'student_data' => $data, 

      ])->save(); 

以上$數據變量已經在它的所有數據保存

它在一個領域節省STUDENT_DATA在json_encoded形式數據庫字段作爲

STUDENT_DATA分貝場

{"name":"test","username":"testuser","password":"testpassword"} 

我想用bcrypt

我怎樣才能實現這一目標,請幫助

回答

0

你嘗試這樣的...

$json = '{"name":"test","username":"testuser","password":"testpassword"}'; 
$arr = (json_decode($json,true)); //converts json into array 
$pass = $arr['password']; 
$password = bcrypt($pass); 
$arr['password'] = $password; 
//print_r($arr); 
$data = json_encode($arr);//back to json from array 

而且

$student_data->fill([ 

      'student_data' => $data, 

      ])->save(); 
+1

由於其工作 –

+1

歡迎享受歡呼....... –

0

在各自的模式來拯救以上密碼,密碼設置屬性可以使用像,

public function setPasswordAttribute($password) 
{ 
    if ($password != null) { 
     $this->attributes['password'] = bcrypt($password); 
    } 
} 

它會簡單地插入每個記錄加密口令ORD。