cvilleger / geo-gouv
Simple Geo Gouv library to query geographic reference data.
0.3.1
2026-08-30 20:44 UTC
Requires
- php: ^8.5
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.95
- phpstan/phpstan: ^2.2
- phpunit/phpunit: ^13.3
- rector/rector: ^2.6
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
cvilleger/geo-gouv
Client PHP léger pour interroger des données de référence géographiques françaises (dumps hors-ligne basés sur l'API officielle de l'État : https://geo.api.gouv.fr/decoupage-administratif).
Fonctionnalités
- Récupération de la liste des départements
- Récupération des communes d'un département
- Modèles PHP pour les entités (Département, Région, Commune)
- Aucun package externe requis (zéro dépendance Composer)
Exigences
- PHP 8.5 ou supérieur
Installation
Installer via Composer :
composer require cvilleger/geo-gouv
Utilisation
Récupérer les départements :
use Cvilleger\GeoGouv\Client; print_r(new Client()->getDepartements()[0]); /* Cvilleger\GeoGouv\Model\Departement Object ( [nom] => Ain [code] => 01 [codeRegion] => 84 [coordinates] => 46.06551335, 5.28478031423462 [region] => Cvilleger\GeoGouv\Model\Region Object ( [nom] => Auvergne-Rhône-Alpes [code] => 84 ) ) */
Récupérer les communes d'un département (ex. 01) :
use Cvilleger\GeoGouv\Client; print_r(new Client()->getCommunesByDepartementCode('01')[0]); /* ( [nom] => L'Abergement-Clémenciat [code] => 01001 [codesPostaux] => Array ( [0] => 01400 ) [coordinates] => Array ( [0] => 4.9306 [1] => 46.1517 ) [surface] => 1564.5 [population] => 832 [departement] => Cvilleger\GeoGouv\Model\CommuneDepartement Object ( [nom] => Ain [code] => 01 ) [region] => Cvilleger\GeoGouv\Model\CommuneRegion Object ( [nom] => Auvergne-Rhône-Alpes [code] => 84 ) ) */
Données et mises à jour
Les données proviennent de l'API publique geo.api.gouv.fr. Mettre à jour régulièrement la librairie pour refléter les changements administratifs.
Licence
MIT — voir le fichier LICENSE.