MT940银行报表解析器的附加组件,用于添加荷兰银行CSV和PHP 5.3更新的ING MT940支持

0.3.3 2016-11-12 23:55 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:58:06 UTC


README

一个扩展jejik/mt940库MT940解析器的composer扩展,修复解析MT940格式的ING银行报表并添加对荷兰银行CSV报表的支持

安装

您可以使用Composer安装cyberwizzard/MT940。您可以在Packagist主页上阅读有关Composer及其主要仓库的更多信息。首先按照Packagist主页上的说明安装您的项目Composer,然后在您的composer.json文件中定义对cyberwizzard/MT940的依赖关系。

注意:当前此库未在Packagist上发布;一旦清理完毕,它将被发布,并且无需指定仓库。

    {
        "repositories": [{
            "type": "vcs",
            "url": "https://github.com/cyberwizzard/mt940"
        }],
        "require": {
            "cyberwizzard/mt940": ">=0.3"
        }
    }

此库遵循PSR-0标准。您需要一个PSR-0兼容的自动加载器来加载cyberwizzard/MT940类。Composer为您在vendor/.composer/autoload.php中提供了一个。

用法

<?php

use Jejik\MT940\Reader;

$reader = new Reader();

// Load the Rabobank CSV parser
$reader->addParser( 'RabobankCSV', 'cyberwizzard\MT940\Parser\RabobankCSV' );
// Append the list of default bank parsers (optional)
$reader->addParsers( $reader->getDefaultParsers() );
// Load the Ing parser from this repository to replace the one from jejik/MT940
$reader->addParser( 'Ing', 'cyberwizzard\MT940\Parser\Ing' );

$statements = $reader->getStatements(file_get_contents('mt940.txt'));

foreach ($statements as $statement) {
    echo $statement->getOpeningBalance()->getAmount() . "\n";

    foreach ($statement->getTransactions() as $transaction) {
        echo $transaction->getAmount() . "\n";
    }

    echo $statement->getClosingBalance()->getAmount() . "\n";
}

有关更多信息,请参阅jejik/MT940仓库

免责声明

自行承担使用此解析器的风险。虽然我们尽力设计符合官方银行报表格式的解析器,但银行自身的实现似乎存在一些问题。

此解析器正在一个私人项目中使用,因此会定期进行测试。