# Dataset Library for PHP/Composer This is a library for loading datasets from bundled packages. The idea isn't to use the classes in this library as a generic datasource, although you could probably pull that off. Instead, use the datasets to import the relevant data to your database of choice, and optionally keep track of the version numbers so new data can be imported automatically when the dependencies have been updated and a new version has been installed. ## Installing To install dataset, require it using composer: ```shell $ composer require noccylabs/dataset ``` You also need some actual datasets. Some interesting ones could be: Package | Description ---|--- [noccylabs/dataset-postal](https://dev.noccylabs.info/noccy/dataset-postal) | Patterns and info for postal (zip) code validation [noccylabs/dataset-calendar](https://dev.noccylabs.info/noccy/dataset-calendar) | Bank holidays [noccylabs/dataset-iso3166](https://dev.noccylabs.info/noccy/dataset-iso3166) | ISO 3166 country codes and namess ## Example ```php use NoccyLabs\Dataset\DatasetManager; $dm = new DatasetManager(); $ds = $dm->getDataset("noccylabs/dataset-iso3166#countries"); echo "Dataset ID: ".$ds->getIdentifier(); // noccylabs/dataset-iso3166#countries echo "Dataset version: ".$ds->getVersion(); // 2022.10.1 // Get a reader by calling open() $reader = $ds->open(); foreach ($reader as $row) { // row is an array } ```