Persekitaran:
CentOS 7.3.1611
PHP 7.1.3
Kod:
Keluaran:
string(21) "0.23337700 1495449772" float(1495449772.2334)
Soalan:
Jalankan kod berulang kali dan dapatkan hasil yang sama.
Adalah mudah difahami untuk mengeluarkan nilai milisaat 8 digit dalam bentuk rentetan Bagaimanapun, dua digit terakhir sentiasa 0. Apabila output sebagai nombor titik terapung, ketepatan dikawal kepada empat digit sebab?
Pengesahan tambahan:
Pelaksanaanphp -r "echo ini_get('precision'), PHP_EOL;"
输出结果为14
, jelas sekali bukan tetapan ketepatan titik terapung dalam PHP yang mempengaruhi output masa mikro(). Kata kunci "microtime" tidak ditemui dalam php.ini Nampaknya tiada tetapan khas yang menjejaskan ketepatan output.
Saya keliru dan saya menantikan nasihat pakar.
ini_get('precision')
Ketepatan kawalan 14 bermaksud:float(1495449772.2334) mempunyai jumlah 14 digit, 10 digit sebelum titik perpuluhan dan 4 digit selepas titik perpuluhan Ia tidak bermakna 14 digit selepas titik perpuluhan.
Mari kita lihat hasil kod facet.