Scris pe

Filipac/cnp – Validarea unui CNP in Php

Build StatusLatest Stable Version Total Downloads Latest Unstable Version License

Am facut un nou pachet de PHP pentru Composer pentru validarea unui Cnp. Este mic, dar l-am creeat pentru ca asa ceva nu exista pe Composer si am vrut sa fac asta dupa ultimile standarde (testing, CI, composer).

Cum instalez pachetul?

composer require filipac/cnp ~1.0

https://www.youtube.com/watch?v=DlHQKygnd_E

Cum folosesc acest pachet?

Clasa Cnp are 2 metode publice statice: valid care returneaza un boolean (true, false). Este disponibila si functia invalid care este practic functia valid, dar negata.

<?php
use FilipacCnpCnp;
if(Cnp::valid('1930101021162')) #true
    echo 'Cnp-ul este valid';
if(! Cnp::valid('1930101021161')) #false
   echo 'Cnp-ul este invalid';
if(Cnp::invalid('1930101021161')) #true
    echo 'Cnp-ul este invalid';
if(!Cnp::invalid('1930101021162')) #false
    echo 'Cnp-ul este valid';
?>

Update:

Incepand de la versiune 1.0.3 am introdus si un ServiceProvider pentru Laravel 5 in caz ca vreti sa folositi acest validator la un form. Tot ce trebuie sa faceti este sa puneti in app.php urmatorul service provider: 'Filipac\Cnp\Laravel\CnpValidatorProvider', dupa care puteti sa folositi validatorul la orice FormRequest sau Validator in felul urmator:

public function rules()
    {
        return [
            'cnp' => 'required|max:13|cnp',
        ];
    }

Sau:

Validator::make($data, [
            'cnp' => 'required|max:13|cnp',
        ])

Cum sa contribui?

Daca ai idei de imbunatatire a acestui script, da fork acestui repository, fa modificarile necesare si apoi da un pull-request. Nu uita sa scrii un test (vezi tests/CnpTest.php) pentru ce ai implementat, altfel nu voi accepta request-ul. Testarea se face cu PhpUnit.

Licienta

Acest script este distribuit sub licienta MIT.

1 comentarii la acest articol

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Copyright © 2024 toate drepturile
nu sunt
rezervate. Faceti ce vreti, e o tara libera.
Cred ca nu mai are rost sa zic, dar tema e facuta de mine cu Tailwind CSS. Gasesti codul sursa aici.
Inca folosesc WordpPess 🧡. Tema e insa custom Laravel 😎.