From 858f9a3bbf6c43adcada1d9de77713ccdc1dce3c Mon Sep 17 00:00:00 2001 From: Rhodri Pugh Date: Tue, 20 Nov 2018 20:21:25 +0000 Subject: [PATCH] fix for encoding numeric values in strings --- src/Stash/Utilities.php | 6 ++++-- tests/Stash/Test/UtilitiesTest.php | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Stash/Utilities.php b/src/Stash/Utilities.php index f216c534..184d5301 100644 --- a/src/Stash/Utilities.php +++ b/src/Stash/Utilities.php @@ -34,6 +34,10 @@ public static function encoding($data) return 'bool'; } + if (is_string($data)) { + return 'string'; + } + if (is_numeric($data)) { if (is_numeric($data) && ($data >= 2147483648 || $data < -2147483648)) { return 'serialize'; @@ -41,8 +45,6 @@ public static function encoding($data) return 'numeric'; } } - - return 'string'; } return 'serialize'; diff --git a/tests/Stash/Test/UtilitiesTest.php b/tests/Stash/Test/UtilitiesTest.php index f83ad32e..703f8ed5 100644 --- a/tests/Stash/Test/UtilitiesTest.php +++ b/tests/Stash/Test/UtilitiesTest.php @@ -25,6 +25,8 @@ public function testEncoding() $this->assertEquals(Utilities::encoding(true), 'bool', 'encoding recognized \'true\' boolean.'); $this->assertEquals(Utilities::encoding(false), 'bool', 'encoding recognized \'false\' boolean'); + $this->assertEquals(Utilities::encoding('1'), 'string', 'encoding recognized \'1\' string.'); + $this->assertEquals(Utilities::encoding('1.2'), 'string', 'encoding recognized \'1.2\' string.'); $this->assertEquals(Utilities::encoding('String of doom!'), 'string', 'encoding recognized string scalar'); $this->assertEquals(Utilities::encoding(234), 'numeric', 'encoding recognized integer scalar');