Я создаю интеграцию платежей в Laravel. Там я хочу сохранить последние 4 цифры карты в базе данных. Вот массив, который я использовал для сохранения данных в базе данных.
$return_code = Payment::where('id', $transactionId)->update([
'return_code' => $status,
'return_message' => $status == 'success'? 'Successfully Captured': 'Payment Failed - ' .$errorMessage,
'tx_ref' => $transactionReference,
'transaction_amount' => !empty($amount) ? $amount : 0.00,
'brand' => $cardType,
'last4' => str_pad(substr($maskedPAN, -4), strlen(4), '*', STR_PAD_LEFT),
'holder' => $cardholderName,
'expiry' => $expiry,
'payment_gateway' => 3,
]);
return $status == 'success'?true : false;
Из этого кода он сохраняет последние четыре цифры в базе данных, только если последние четыре цифры начинаются без нуля . Это означает, что если номер карты равен 4111 1111 1111 1 111, он сохраняется в базе данных как 1111 .
Но, если последние четыре цифры карта начинается с нуля , она сохраняет только 111 в базу данных. Это означает, что если номер карты равен 4000 4000 0000 0 111, то в базу данных сохраняется только 111 .
Пожалуйста, помогите мне сохранить последние четыре цифры карта, даже если последние четыре цифры начинаются с нуля 4000 4000 0000 0 111.
Спасибо.