smichaelsen / caldera-php
Caldera 记录解析器
0.5.1
2024-02-06 09:48 UTC
Requires
- php: ^7.0 || ^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.12.1
- phpunit/phpunit: ^6
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