Sprawdzenie, czy wartość jest numerem PESEL
Założenie: Stworzymy funkcję w PHP, która sprawdzi, czy podana wartość jest poprawnym numerem PESEL.
Krok po kroku:
- Sprawdzenie długości: Numer PESEL ma zawsze 11 cyfr. Sprawdzamy, czy podana wartość ma odpowiednią długość.
- Sprawdzenie, czy składa się z cyfr: Upewniamy się, że wszystkie znaki w ciągu są cyframi.
- Algorytm kontrolny: Wykonujemy algorytm kontrolny weryfikujący poprawność numeru PESEL (uproszczony przykład – pełna walidacja wymaga bardziej zaawansowanego algorytmu).
- Wyjaśnienie kodu: Funkcja `isValidPesel` najpierw sprawdza długość PESEL-a. Następnie weryfikuje, czy składa się tylko z cyfr. Na końcu stosuje uproszczony algorytm kontrolny, sumując cyfry z wagami. Jeśli suma modulo 10 jest różna od 0, PESEL jest niepoprawny.
function isValidPesel($pesel) {
if (strlen($pesel) !== 11) {
return false;
}
// ... dalsza część walidacji ...
}
if (!ctype_digit($pesel)) {
return false;
}
$weights = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3, 1];
$sum = 0;
for ($i = 0; $i < 11; $i++) {
$sum += $pesel[$i] * $weights[$i];
}
if ($sum % 10 !== 0) {
return false;
}
return true;
}
$pesel = "12345678901";
if (isValidPesel($pesel)) {
echo "PESEL poprawny";
} else {
echo "PESEL niepoprawny";
}
Pamiętaj, że ten przykład prezentuje podstawową walidację. Pełna weryfikacja numeru PESEL wymaga bardziej zaawansowanego algorytmu uwzględniającego datę urodzenia i płeć.