[PHP] Liczba PI

Skoro znalazłeś się tutaj, to prawdopodobnie dobrze wiesz czym jest liczba PI i do czego może przydać Ci się jej (przybliżona oczywiście) wartość. Dlatego pominę ten aspekt i skupię się od razu na obsłudze PI w PHP.

W PHP istnieją dwa równoznaczne sposoby pobrania liczby PI:

  • Funkcja pi() - nie przyjmuje żadnych argumentów, a dane zwraca w postaci float
  • Stała M_PI

Jak już wspomniałem oba sposoby są równoznaczne - otrzymamy ten sam wynik. Długość rozwinięcia jest zależna od dyrektywy precision w php.ini. Domyślną wartością jest 14, co oznacza, że dokładnie tyle miejsc po przecinku będzie miała liczba PI wyświetlona którymś z podanych wyżej sposobów. Dyrektywa precision wpływa oczywiście na długość rozwinięcia wszystkich liczb zmiennoprzecinkowych (float), a nie tylko na PI. Jej maksymalna wartość zależy od środowiska, w tym między innymi od architektury procesora.

W PHP mamy także kilka innych predefiniowanych stałych zawierających liczbę PI poddaną różnym prostym operacjom. Podsumuję wszystkie dostępne możliwości listingiem kodu:

<?php
// domyślna wartość precision = 14

echo pi(); // 3.1415926535898
echo M_PI; // 3.1415926535898
// wyniki są identyczne

// Dodatkowe stałe (dodane w PHP4)
M_PI_2 = 1.57079632679489661923 // PI/2
M_PI_4 = 0.78539816339744830962 // PI/4
M_1_PI = 0.31830988618379067154 // 1/PI
M_2_PI = 0.63661977236758134308 // 2/PI
M_SQRTPI = 1.77245385090551602729 // Pierwiastek kwadratowy z PI
M_2_SQRTPI = 1.12837916709551257390 // 2/pierwiastek kwadratowy z PI (2/sqrt(pi))

Nie muszę chyba tłumaczyć, że wszystko bazuje na przybliżeniach :)

Komentarze wyłączone

Możliwość komentowania na blogu została wyłączona. Zapraszam do kontaktu na Twitterze, Facebooku lub poprzez formularz, o ten tutaj. Do usłyszenia!