|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-05-10 20:04 UTC] tony2001@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 02:00:01 2025 UTC |
Description: ------------ When I have to manage a long number in the header, the __soapCall function returns a float number in exponential format. The original sent value can't be retrieved and the returned one is different. Reproduce code: --------------- A Java server sends a sessionID in the header with the following value : 339051398236687110 This is the client code : $soapclient->__soapCall('beginSession',$parameters, null, null, $header); echo $header["sessionID"]; // returns 3.3905139823669E+17 , an // invalid value for the next call // and with less digits than required $strNum = number_format($header["sessionID"], 0, "", ""); echo $strNum; // returns the rounded value // 339051398236687050 , that is // different from the original // 339051398236687110 Expected result: ---------------- The header has to contain 339051398236687110 Actual result: -------------- The header contain 3.3905139823669E+17