Ketepatan Nombor Terapung PHP: Menyahmistikan Yang Tidak Dijangka
Dalam PHP, nombor titik terapung boleh menghasilkan keputusan yang tidak dijangka disebabkan sifat semula jadi binari aritmetik. Tidak seperti nombor nyata, apungan binari diwakili dengan ketepatan terhad, membawa kepada anggaran dan potensi ketidaktepatan.
Pertimbangkan contoh:
$a = '35'; $b = '-34.99'; echo ($a + $b);
Ini menghasilkan 0.009999999999998 dan bukannya 0.01 yang dijangkakan. Ini kerana 34.99 dan 0.01 tidak boleh diwakili dengan tepat dalam binari, menghasilkan perwakilan anggaran.
Untuk mengatasi isu ini, pertimbangkan alternatif berikut:
Perlu diperhatikan bahawa PHP tidak mempunyai jenis data perpuluhan khusus yang terdapat dalam bahasa lain, yang berpotensi meningkatkan ketepatan dalam senario tertentu. Walau bagaimanapun, dengan memahami had aritmetik titik terapung, pembangun boleh mengurangkan keputusan yang tidak dijangka dan memastikan pengiraan yang tepat.
Atas ialah kandungan terperinci Mengapa Nombor Titik Terapung PHP Tidak Tepat, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!