$value) { if (substr($key, 0, 4) == "vnp_") { $inputData[$key] = $value; } } unset($inputData['vnp_SecureHash']); ksort($inputData); $i = 0; $hashData = ""; foreach ($inputData as $key => $value) { if ($i == 1) { $hashData = $hashData . '&' . urlencode($key) . "=" . urlencode($value); } else { $hashData = $hashData . urlencode($key) . "=" . urlencode($value); $i = 1; } } $secureHash = hash_hmac('sha512', $hashData, config('vnpay.hash_secret')); $result = [ 'isValid' => ($secureHash == $vnp_SecureHash), 'data' => $data, 'isSuccess' => (($secureHash == $vnp_SecureHash) && ($data['vnp_ResponseCode'] == '00')) ]; return $result; } }