diff --git a/src/PhoneNumber.php b/src/PhoneNumber.php new file mode 100644 index 0000000..ab25052 --- /dev/null +++ b/src/PhoneNumber.php @@ -0,0 +1,67 @@ += 7) { + $phoneNumber = \mb_substr($phoneNumber, 0, 2) . '***' . \mb_substr($phoneNumber, -2); + } + elseif ($significantCharsLength === 6) { + $phoneNumber = \mb_substr($phoneNumber, 0, 2) . '**' . \mb_substr($phoneNumber, -2); + } + elseif ($significantCharsLength === 5) { + $phoneNumber = \mb_substr($phoneNumber, 0, 1) . '**' . \mb_substr($phoneNumber, -2); + } + elseif ($significantCharsLength === 4) { + $phoneNumber = \mb_substr($phoneNumber, 0, 1) . '**' . \mb_substr($phoneNumber, -1); + } + elseif ($significantCharsLength === 3) { + $phoneNumber = '**' . \mb_substr($phoneNumber, -1); + } + elseif ($significantCharsLength === 2) { + $phoneNumber = '**'; + } + else { + $phoneNumber = '*'; + } + + if ($hasLeadingPlus) { + $phoneNumber = '+' . $phoneNumber; + } + + return $phoneNumber; + } + +}