@@ -90,8 +90,12 @@ discard block |
||
| 90 | 90 | */ |
| 91 | 91 | public static function getScalar(string $v, bool $onlyScalar = false) |
| 92 | 92 | { |
| 93 | - if (Regex::isDate($v)) return self::$dateAsObject && !$onlyScalar ? date_create($v) : $v; |
|
| 94 | - if (Regex::isNumber($v)) return self::getNumber($v); |
|
| 93 | + if (Regex::isDate($v)) { |
|
| 94 | + return self::$dateAsObject && !$onlyScalar ? date_create($v) : $v; |
|
| 95 | + } |
|
| 96 | + if (Regex::isNumber($v)) { |
|
| 97 | + return self::getNumber($v); |
|
| 98 | + } |
|
| 95 | 99 | $types = ['yes' => true, |
| 96 | 100 | 'no' => false, |
| 97 | 101 | 'true' => true, |
@@ -114,8 +118,12 @@ discard block |
||
| 114 | 118 | */ |
| 115 | 119 | private static function getNumber(string $v) |
| 116 | 120 | { |
| 117 | - if (preg_match(Regex::OCTAL_NUM, $v)) return intval(base_convert($v, 8, 10)); |
|
| 118 | - if (preg_match(Regex::HEX_NUM, $v)) return intval(base_convert($v, 16, 10)); |
|
| 121 | + if (preg_match(Regex::OCTAL_NUM, $v)) { |
|
| 122 | + return intval(base_convert($v, 8, 10)); |
|
| 123 | + } |
|
| 124 | + if (preg_match(Regex::HEX_NUM, $v)) { |
|
| 125 | + return intval(base_convert($v, 16, 10)); |
|
| 126 | + } |
|
| 119 | 127 | return is_bool(strpos($v, '.')) ? intval($v) : floatval($v); |
| 120 | 128 | } |
| 121 | 129 | |