System Walidacji Laravel ma 60+ validation rules available, ale co jeśli chcesz coś ekstra? Możesz easily create your own validation rulelub skorzystaj z czegoś, co już jest dostępne w internecie. Spójrzmy.
22 zasady z Alfametryczny
Zaczynamy od serii artykułów ks Matt Kingshott, starszy programista w Alphametric, napisał sporo postów na Medium i dodał wszystkie zasady do pliku a Repozytorium Githuba. Oto lista dostępnych tam zasad:
- Silne hasło: checks for "strong" hasło
- Numer telefonu: ważny numer telefonu
- Właściciel rekordu: Wymaga, aby identyfikator uwierzytelnionego użytkownika był zgodny z kolumną user_id w danym rekordzie bazy danych, np. właściciel:posty, id
- Postać Pieniężna: kwota pieniężna, np. 72,33 USD
- Jednorazowy e-mail: adres e-mail, który nie jest jednorazowy
- Nie istnieje: wartość nie występuje w danej tabeli / kolumnie bazy danych
- Dziesiętny: dziesiętny w odpowiednim formacie
- Zakodowany obraz: wartość to obraz zakodowany w base64 danego typu MIME
- Współrzędne lokalizacji: rozdzielony przecinkami zestaw współrzędnych szerokości i długości geograficznej
- Plik istnieje: wartość to ścieżka do istniejącego pliku
- Równa się: wartość jest równa innej podanej wartości
- Adres Mac: wartość to prawidłowy adres MAC
- ISBN: wartość to prawidłowy numer ISBN-10 lub ISBN-13
- Kończy się na: wartość kończy się podanym ciągiem znaków
- Liczba parzysta: value is an nawet number (decimals are first converted using intval)
- DziwneNumber: wartość jest liczbą nieparzystą (liczby dziesiętne są najpierw konwertowane za pomocą intval)
- Małe litery: wartość to ciąg znaków pisany małymi literami
- Duże litery: wartość jest ciągiem pisanym wielką literą
- Tytuł sprawy: wartość jest łańcuchem tytułowym
- Domena: wartość jest domeną, np. google.com, www.google.com
- Identyfikacja obywatela: wartość id numer identyfikacyjny obywatela USA, Wielkiej Brytanii lub Francji
- Bez spacji: wartość nie zawiera żadnych białych znaków
8 Rules from Scotta Robinsona
Kolejny dobry zestaw zasad jest tworzony przez Scott Robinson, który stworzył specjalną stronę internetową laravel-validation-rules.github.io. Ma takie zasady:
- Kolor: Validates colours, currently supporting hex codes tylko.
- Kody krajów: Sprawdza 2- i 3-znakowe kody krajów.
- Karta kredytowa: Ta reguła potwierdzi, że podany numer karty kredytowej, data ważności lub kod CVC są ważne.
- IP: Sprawdza, czy adres IP jest publiczny lub prywatny. Obsługuje ipv4 i ipv6.
- Telefon: Sprawdza format numeru telefonu.
- Subdomena: Sprawdza subdomenę przesłaną przez użytkownika w Twojej aplikacji.
- Strefa czasowa: Ta reguła sprawdzi, czy dana strefa czasowa jest poprawna w systemowej bazie danych datetime.
- Stan USA: Zatwierdź stany USA i prowincje Kanady.
5 Rules from Przestrzeń
Nasz ukochany Spatie zespół też ma their own repository z kilkoma zasadami:
- Upoważniony: użytkownik jest upoważniony do wykonania zdolności na egzemplarzu danego modelu.
- Kod pocztowy: pole to prawidłowy kod kraju ISO3166.
- wylicz: wartość jest częścią danej klasy enum, na przykład myclabs/php-enum.
- ModeleIstnieją: wszystkie wartości w tablicy wejściowej istnieją jako atrybuty dla danej klasy modelu.
- Rozgraniczony: łańcuch zawiera wartości rozdzielane, np „[email protected], [email protected]”
5 zasad z Pineco.de
Wreszcie, Gergő D. Nagy z Pineco.de ma published an article pod koniec 2017 r. wraz z zestawem zasad walidacji i a repository. Od tego czasu nie był aktualizowany, więc używaj go ostrożnie. Zasady to:
- Sprawdzanie użytkownika password
- Odd or even liczby
- Wartość może być zwiększona only
- Wartość zawiera konkretny słowa
- Dzień musi być dzień powszedni
Coś przegapiłem?