Browse Source

fix: convert native PHP floats to single precision (#8187)

* fix: convert native PHP floats to single precision

* fix unpack
Brent Shaffer 4 years ago
parent
commit
468bc193ec
1 changed files with 1 additions and 1 deletions
  1. 1 1
      php/src/Google/Protobuf/Internal/GPBUtil.php

+ 1 - 1
php/src/Google/Protobuf/Internal/GPBUtil.php

@@ -168,7 +168,7 @@ class GPBUtil
     public static function checkFloat(&$var)
     public static function checkFloat(&$var)
     {
     {
         if (is_float($var) || is_numeric($var)) {
         if (is_float($var) || is_numeric($var)) {
-            $var = floatval($var);
+            $var = unpack("f", pack("f", $var))[1];
         } else {
         } else {
             throw new \Exception("Expect float.");
             throw new \Exception("Expect float.");
         }
         }