nigrosimone/codicefiscale

Libreria PHP per la validazione dei Codici Fiscali italiani a 16 caratteri con supporto per l'omocodia

Maintainers

Package info

github.com/nigrosimone/codice-fiscale

Homepage

Issues

Type:project

pkg:composer/nigrosimone/codicefiscale

Transparency log

Statistics

Installs: 13 920

Dependents: 0

Suggesters: 0

Stars: 16

1.0.4 2026-07-29 05:55 UTC

This package is auto-updated.

Last update: 2026-07-29 05:57:55 UTC


README

CI Coverage Status

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