PHP の microtime() 関数の 2 つの return メソッドの精度が異なるのはなぜですか?
習慣沉默
習慣沉默 2017-05-24 11:33:37
0
1
632

環境:
CentOS 7.3.1611
PHP 7.1.3

コード:

リーリー

出力:

リーリー

質問:
コードを繰り返し実行すると、同じ結果が得られます。
8桁のミリ秒値を文字列で出力するとわかりやすいです。とにかく下2桁は常に0です。浮動小数点数で出力した場合の精度は4桁で管理されていますが、その理由は何ですか?

追加の検証:
実行 php -r "echo ini_get('precision'), PHP_EOL;"出力結果は 14 ですが、これは明らかに浮動小数点に関するものではありませんPHP の場合 精度の設定は、microtime() の出力に影響します。 php.ini には「microtime」というキーワードは見当たりませんが、出力精度に影響する特別な設定はないようです。

めまいがするので専門家のアドバイスを楽しみにしています。

習慣沉默
習慣沉默

全員に返信(1)
曾经蜡笔没有小新

ini_get('precision') 制御精度 14 は次のことを意味します:

float(1495449772.2334)は小数点前10桁、小数点後4桁の合計14桁になります。 小数点以下14桁という意味ではありません。

ファセットコードの結果を見てみましょう。

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート