1 <?php declare(strict_types=1);
14 const REG_STRING =
'/^\s*(-?(0|([1-9]\d*)))([.,]\d*)?\s*$/';
25 if (is_float($from) && !is_nan($from) && $from !== INF && $from !== -INF) {
34 return floatval($from);
37 if (is_string($from)) {
38 $preg_match_string = preg_match(self::REG_STRING, $from, $RegMatch);
39 if ($preg_match_string) {
40 return floatval(str_replace(
',',
'.', $from));
43 $preg_match_floating_string = preg_match(self::REG_STRING_FLOATING, $from, $RegMatch);
44 if ($preg_match_floating_string) {
45 return floatval($from);
49 sprintf(
'The value "%s" could not be transformed into an float', $from),
56 sprintf(
'The value "%s" could not be transformed into an float', $from),
trait DeriveApplyToFromTransform
trait DeriveInvokeFromTransform