datalinx / php-upn-qr-generator
斯洛文尼亚UPN付款订单的二维码生成器
v1.1.2
2023-02-10 07:16 UTC
Requires
- php: >=7.4
- ext-mbstring: *
- bacon/bacon-qr-code: ^2.0.7
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.14
- khanamiryan/qrcode-detector-decoder: 1.0.5.*
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-08-31 00:26:01 UTC
README
关于
使用这个库,您可以生成斯洛文尼亚使用的UPN付款订单的二维码,其技术规范由斯洛文尼亚银行协会定义。
此库可以将PNG、SVG或EPS图像输出到本地文件。
代码经过全面测试,包括生成的二维码的OCR扫描。
要求
- PHP >= 7.4
- mbstring和iconv PHP扩展
- imagick PHP扩展,但仅当您想生成PNG(矢量)二维码图像时需要——对于矢量格式(SVG、EPS)不需要
安装
使用composer下载
composer require datalinx/php-upn-qr-generator
用法
为了生成二维码,您至少需要传递以下参数
- recipientIban
- recipientCity
最小必需参数基于Intesa Sanpaolo Bank Slovenia提供的Android应用程序ISPS和Banka IN。
请参阅类文档块以获取接受的参数格式和长度。
示例代码
此代码展示了典型用例。有关可以将哪些内容放入二维码中的更多信息,请参阅UPNQR类。
// Create an instance of the UPNQR class $QR = new UPNQR(); // Set payer $QR ->setPayerName("Janez Novak") ->setPayerStreetAddress("Lepa ulica 33") ->setPayerCity("Koper"); // Set recipient $QR ->setRecipientIban("SI56020360253863406") ->setRecipientName("Podjetje d.o.o.") ->setRecipientStreetAddress("Neka ulica 5") ->setRecipientCity("Ljubljana"); // Transaction details $QR ->setAmount(55.58) ->setRecipientReference("SI081236-17-34565") ->setPurposeCode("GDSV") ->setPaymentPurpose("Plačilo spletnega naročila št. 304"); try { // Generate QR code image of type svg (use .png for PNG images) $QR->generateQrCode("./qrcode.svg"); } catch (Exception $e) { throw new Exception("Error generating QR code image: " . $e->getMessage()); }
上述代码将生成此二维码
贡献
如果您有如何改进此包的建议,请提出问题或甚至更好地提交一个pull request。
如果您想贡献,请参阅DataLinx PHP包模板中的开发指南。
开发者文档
- 二维码技术规范(见第5.2章)
变更日志
本项目所有显著更改都自动记录在CHANGELOG.md文件中,基于release-please GitHub操作的工作流程。
格式基于Keep a Changelog,且本项目遵循语义化版本控制。
为了使所有这些工作,提交信息必须遵循常规提交规范,该规范也由Git钩子强制执行。