Есть ли в PHP какой-нибудь парсер ICCDATA?
Это должен быть парсер данных ICCDATA, у меня есть парсер ISO8583, но он не анализирует ICCDATA.
Корень вашего ответа должен правильно понять формат элемента а затем в поисках правильной вещи.
Я предполагаю, что вы имеете в виду элемент данных интегральной схемы 55 (ICC), когда говорите в поле ICCDATA ISO-8583. EMV (ISO 7814), VISA, MasterCard и другие спецификации довольно четко определяют его формат.
То, что вам нужно, это X.690 BER-TLV синтаксический анализатор, чтобы разбить эту часть сообщения, а не просто общий анализатор полей TLV.
На Stack Exchange были и другие посты на эту тему, это хорошая новость. Это хорошо на разнице между простой и BER-TLV.
GitHub имеет парсеры BER-TLV, если вам нужен быстрый старт и этот от NuclearDog был тот, который подошел к вершине списка при поиске.
После того, как вы написали свой код, у EMVLabs есть инструмент, который поможет вам проверить вашу кодировку или посмотреть, получите ли вы тот же результат с их BER-TLV декодер инструмент. (очевидно, не помещайте производственные данные там).
Других решений пока нет …