| @@ 202-207 (lines=6) @@ | ||
| 199 | } |
|
| 200 | ||
| 201 | // x64, bcmath |
|
| 202 | if (function_exists('bcmul')) { |
|
| 203 | $h = bcdiv($v, 4294967296, 0); |
|
| 204 | $l = bcmod($v, 4294967296); |
|
| 205 | return pack('NN', $h, $l); |
|
| 206 | } |
|
| 207 | ||
| 208 | // x64, no-bcmath |
|
| 209 | $p = max(0, strlen($v) - 13); |
|
| 210 | $lo = (int)substr($v, $p); |
|
| @@ 226-231 (lines=6) @@ | ||
| 223 | } |
|
| 224 | ||
| 225 | // x32, bcmath |
|
| 226 | if (function_exists('bcmul')) { |
|
| 227 | $h = bcdiv($v, '4294967296', 0); |
|
| 228 | $l = bcmod($v, '4294967296'); |
|
| 229 | return pack('NN', (float)$h, (float)$l); // conversion to float is intentional; int would lose 31st bit |
|
| 230 | } |
|
| 231 | ||
| 232 | // x32, no-bcmath |
|
| 233 | $p = max(0, strlen($v) - 13); |
|
| 234 | $lo = (float)substr($v, $p); |
|