Download the PHP package theodorejb/polycast without Composer
On this page you can find all versions of the php package theodorejb/polycast. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download theodorejb/polycast
More information about theodorejb/polycast
Files in theodorejb/polycast
Package polycast
Short Description Safely cast values to int, float, or string
License MIT
Informations about the package polycast
PolyCast
Provides safe_int
, safe_float
, and safe_string
functions.
The functions return true if a value can be cast to the designated type without
data loss, and false if it cannot.
Three complementary functions are also included: to_int
, to_float
, and
to_string
. These functions cast and return a value if the corresponding
safe_ function returns true, and throw a CastException
if it returns false.
This library was originally based on the Safe Casting Functions RFC proposed (but ultimately declined) for PHP 7. For additional background info see PolyCast: a library for safe type conversion in PHP.
Acceptable casts
safe_int
- Integers
- Floats without a remainder between
PHP_INT_MIN
andPHP_INT_MAX
- Strings with an optional positive/negative sign, without leading zeros, and
containing the digits 0-9 with a value between
PHP_INT_MIN
andPHP_INT_MAX
.
safe_float
- Floats
- Integers
- Strings with an optional positive/negative sign matching the format described at https://php.net/manual/en/language.types.float.php.
safe_string
- Strings
- Integers
- Floats
- Objects with a
__toString
method
The safe_ functions will always return false if passed null
, true
or
false
, an array, resource, or object (with the exception of objects with a
__toString
method passed to safe_string
).
Install via Composer
composer require theodorejb/polycast
Usage examples
Input validation
Safe type conversion
Author
Theodore Brown
https://theodorejb.me
License
MIT