私はSOAPClientを使用してメソッドを呼び出しています。メソッド(リモートの外部SOAP Webサービス)が私に19桁の数字を返しています。返されていることを私は支配しません。この番号の値を印刷すると、最初の16桁だけが正確です。 私はタイプキャスト、GMPなどを試してみました。しかし、PHPがWebサービス呼び出しの結果に基づいて変数に値を割り当てると、完全な19桁の数字が既に失われているように見えます。したがって、値を取得する方法はありません。PHPで16桁を超える値を扱う方法は?
$client = new SoapClient($sccSystemWSDL);
try{
$sessionID = $client->logonUser($adminUser,$passWord);
}
私はこの問題を抱えていませんでした。しかし今は32ビットマシンでこれを実行しなければなりません。
+ Precisionディレクティブだけでなく、精度は浮動小数点を扱うときにBCMathに面白い効果があることにも注意してください。http://stackoverflow.com/a/14656315/1226894 – Baba