Updated readme, bins
This commit is contained in:
parent
8d6c1800b9
commit
f1ab6bd74b
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
/vendor
|
||||
/composer.lock
|
||||
|
||||
/*.zip
|
||||
/.phpunit.cache
|
||||
|
37
README.md
37
README.md
@ -1,22 +1,43 @@
|
||||
# Dataset Library for PHP/Composer
|
||||
|
||||
This is a library for loading datasets from bundled packages.
|
||||
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
|
||||
|
||||
Require Dataset, and some actual datasets:
|
||||
|
||||
$ composer require noccylabs/dataset juicebox/flavordata
|
||||
|
||||
You can now open the desired sets and do useful stuff with the data:
|
||||
|
||||
```php
|
||||
use NoccyLabs\Dataset\DatasetManager;
|
||||
|
||||
$dm = new DatasetManager();
|
||||
$ds = $dm->getDataset("juicebox/flavordata#flavors");
|
||||
$ds = $dm->getDataset("noccylabs/dataset-iso3166#countries");
|
||||
|
||||
foreach ($ds as $row) {
|
||||
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
|
||||
}
|
||||
```
|
||||
|
@ -2,8 +2,9 @@
|
||||
<?php
|
||||
|
||||
foreach ([
|
||||
__DIR__."/..",
|
||||
__DIR__."/../vendor",
|
||||
__DIR__."/../../../vendor",
|
||||
__DIR__."/../../..",
|
||||
__DIR__."/vendor",
|
||||
] as $dir) {
|
||||
if (file_exists($dir."/autoload.php")) {
|
||||
|
Loading…
Reference in New Issue
Block a user