nigrosimone / codicefiscale
Libreria PHP per la validazione dei Codici Fiscali italiani a 16 caratteri con supporto per l'omocodia
Package info
github.com/nigrosimone/codice-fiscale
Type:project
pkg:composer/nigrosimone/codicefiscale
Requires
- php: >=7.4
Requires (Dev)
- php-coveralls/php-coveralls: ^2.5
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
This package is auto-updated.
Last update: 2026-07-29 05:57:55 UTC
README
Libreria PHP per la validazione dei Codici Fiscali italiani a 16 caratteri con supporto per l'omocodia. Leggera (solo 10 KB) e veloce (1'000'000 di codici fiscali validati in 3 secondi).
Oltre al carattere di controllo vengono verificati la forma del codice, il mese di nascita e la
compatibilità del giorno con il mese. Del codice catastale viene controllata la lettera iniziale,
limitata a quelle realmente assegnate (A-M per i comuni italiani, dove l'alfabeto italiano non
comprende J e K, e Z per gli stati esteri), mentre le tre cifre successive non sono
confrontate con l'elenco ANCI: un codice valido è formalmente coerente, non necessariamente
esistente.
L'alterazione per omocodia è accettata solo nella forma prevista dal DM 23/12/1976: la sostituzione delle cifre con le corrispondenti lettere parte dal carattere numerico più a destra e prosegue verso sinistra senza salti. Un codice in cui una cifra risulta sostituita mentre una posizione più a destra è rimasta numerica non è emettibile e viene rifiutato, anche quando il carattere di controllo è corretto.
Requisiti
PHP 7.4 o superiore (testata fino a PHP 8.4).
Installazione
Usa il dependency manager composer per installare nigrosimone/codicefiscale:
composer require nigrosimone/codicefiscale
Oppure scarica direttamente il sorgente CodiceFiscale.php
Uso
<?php require "vendor/autoload.php"; use NigroSimone\CodiceFiscale; $cf = new CodiceFiscale(); if( $cf->validaCodiceFiscale('MRARSS75P14H501I') ) echo 'Codice fiscale corretto'; else echo 'Codice fiscale non corretto';
Demo online
Sviluppo
Clona il progetto:
git clone https://github.com/nigrosimone/CodiceFiscale.git
Per inizializzare il progetto:
composer install
Per eseguire i test unitari:
composer test
Per eseguire il lint:
composer phpcs
Per visualizzare l'esempio (Esempio.php):
composer dev
l'esempio sarà visibile l'indirizzo http://localhost:8000