smichaelsen/caldera-php

Caldera 记录解析器

0.5.1 2024-02-06 09:48 UTC

This package is auto-updated.

Last update: 2024-09-06 11:09:15 UTC


README

Caldera 帮助您从 XML 或 CSV 等来源导入数据,根据您的需求进行映射、转换和验证,并提供具有小内存占用。

$csvInputGenerator = new \Smichaelsen\Caldera\InputGenerator\CsvInputGenerator();
$csvInputGenerator->setCsvHandle(fopen(__DIR__ . '/test-equestrian.csv', 'r'));

foreach (\Smichaelsen\Caldera\RecordMapper::mapRecords(
    $csvInputGenerator,
    new MyMappingClass()
) as $record) {
    // $record is mapped, validated and processed according to rules in your MyMappingClass() 
}

Caldera 在可能的情况下按行(按记录)工作(XML 不可能),这样节省了内存。这使得您能够从例如巨大的 CSV 文件中导入数据。

运行测试

composer update --prefer-lowest --prefer-stable
./vendor/bin/phpunit --bootstrap vendor/autoload.php tests
composer update
./vendor/bin/phpunit --bootstrap vendor/autoload.php tests