一个用于存储和验证国际证券识别号码(ISIN/ISO 6166)的PHP库

v1.0.0 2016-02-28 21:46 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:25:48 UTC


README

一个用于存储和验证国际证券识别号码(ISIN/ISO 6166)的PHP库。ISIN将与校验和进行核对,详情请参阅[https://en.wikipedia.org/wiki/International_Securities_Identification_Number]

安装

可以通过composer安装此库

composer require djmarland/isin

用法

您可以通过传入字符串来实例化一个ISIN对象

use Djmarland\ISIN;

$number = 'GB00B3W23161';
$isin = new ISIN($number);

如果传入的值不是有效的ISIN,它将抛出Djmarland\ISIN\Exception\InvalidISINException。要获取值,您可以这样做

$value = $isin->getValue();
// GB00B3W23161

如果您只想获取校验位,可以使用

$digit = $isin->getCheckDigit();
// 1

对象有一个__toString,所以在视图/路由等中的使用将正常工作

echo 'The ISIN is ' . $isin;
// The ISIN is GB00B3W23161

验证ISIN

有一些简单的验证辅助静态函数。

$valid = ISIN::isValid('GB00B3W23161');
// true

如果值是有效的ISIN,则返回true,否则返回false。

$number = ISIN::validate('gb00b3w23161');
// GB00B3W23161
$number = ISIN::validate('ABC');
// InvalidISINException

返回正确格式的ISIN(删除空白并转换为大写)。如果输入无效,将抛出Djmarland\ISIN\Exception\InvalidISINException

开发

此项目是开源的。欢迎反馈和拉取请求。要开发代码

检出项目。运行composer install

运行测试

PHPUnit

vendor/bin/phpunit

Code Sniffer

vendor/bin/phpcs

在提交代码之前,两者都必须成功运行。代码覆盖率也必须是100%。