granam/integer

轻量级整数容器,带有独立的转换器

安装次数: 21,608

依赖者: 20

建议者: 0

安全性: 0

星标: 2

关注者: 2

分支: 0

开放性问题: 0

类型:项目

7.1.0 2021-03-24 09:07 UTC

README

Build Status

提示

首先,请确保您不需要仅仅是一个 简单的内置整数验证

版本要求

  • 6.* 需要 PHP 7.1+ composer require granam/integer:6.*
  • 5.* 需要 PHP 7.0+ composer require granam/integer:5.*
  • 4.* 需要 PHP 5.6+ composer require granam/integer:4.*
  • 3.* 需要 PHP 5.4+ composer require granam/integer:3.*
<?php
use Granam\Integer\IntegerObject;
use Granam\Integer\Tools\Exceptions\WrongParameterType;

$integer = new IntegerObject(12345);

// int(12345)
var_dump($integer->getValue());

$integerFromString = new IntegerObject('124578');
// int(124578)
var_dump($integerFromString->getValue());

$integerFromFloatString = new IntegerObject('987.0');
// int(987)
var_dump($integerFromFloatString->getValue());

try {
    new IntegerObject(987.123);
} catch (WrongParameterType $integerException) {
   // Something get wrong: Some value has been lost on cast. Got '987.456', cast into integer 987
   echo('Something get wrong: ' . $integerException->getMessage() . "\n");
 }

$integerFromTrue = new IntegerObject(true);
// int(1)
var_dump($integerFromTrue->getValue());

$integerFromNull = new IntegerObject(null);
// int(0)
var_dump($integerFromNull->getValue());
// ...

$stringWithAlmostInteger = '0.9999999999999999';
$integerFromStringWithAlmostInteger = new IntegerObject($stringWithAlmostInteger);
// int(1)
var_dump($integerFromStringWithAlmostInteger->getValue());
// int(0) -- because of (int)(float)$value
var_dump((int)$stringWithAlmostInteger);