Index: phpdoc/pl/functions/math.xml +++ phpdoc/pl/functions/math.xml Funkcje Matematyczne Math Wprowadzenie Omówione poniżej funkcje operują na wartościach z przedziałów typów integer i float na twoim komputerze (co odpowiada zakresowi long resp. double języka C). Jeśli potrzebujesz obsługi większych liczb, zajrzyj do funkcji matematycznych dla liczb dowolnej dokładności Stałe matematyczne Poniższe wartości są zdefiniowane w PHP jako stałe w rozszerzeniu matematycznym:

Stałe matematyczne Stała Wartosć Opis M_PI 3.14159265358979323846 Pi M_E 2.7182818284590452354 e M_LOG2E 1.4426950408889634074 log_2 e M_LOG10E 0.43429448190325182765 log_10 e M_LN2 0.69314718055994530942 log_e 2 M_LN10 2.30258509299404568402 log_e 10 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 sqrt(pi) [4.0.2] M_2_SQRTPI 1.12837916709551257390 2/sqrt(pi) M_SQRT2 1.41421356237309504880 sqrt(2) M_SQRT3 1.73205080756887729352 sqrt(3) [4.0.2] M_SQRT1_2 0.70710678118654752440 1/sqrt(2) M_LNPI 1.14472988584940017414 log_e(pi) [4.0.2] M_EULER 0.57721566490153286061 Stała Eulera [4.0.2]
Tylko stała M_PI była dostępna w wsześniejszych wersjach PHP do PHP4RC1 włącznie. Pozostałe pojawiły się w PHP 4.0. Stałe oznaczone [4.0.2] zostały dodane w PHP 4.0.2. abs Wartość bezwględna (moduł z liczby) Opis mixed abs mixed liczba Zwraca wartość bezwzględną podanej liczby. Jeśli argument is typu float, zwracana wartość jest także float, inaczej zwracana jest wartość integer (float ma zwykle szerszy zakres niż integer). acos Arcus cosinus Opis float acos float argument Zwraca w radianach arcus cosinus argumentu. Zobacz też acosh, asin i atan. acosh Odwrotny cosinus hiperboliczny Opis float acosh float arg Zwraca odwrotny cosinus hiperboliczny z liczby arg, tzn. taką wartość, której cosinus hiperboliczny równy arg. ¬e.no-windows; Zobacz też acos, asin and atan. asin Arcus sinus Opis float asin float argument Zwraca w radianach arcus sinus argumentu. Zobacz też asinh, acos i atan. asinh Odwrotny sinus hiperboliczny Opis float asinh float arg Zwraca odwrotny sinus hiperboliczny z liczby arg, tzn. taką wartość, której sinus hiperboliczny jest równy arg. ¬e.no-windows; Zobacz też asin, acos and atan. atan Arcus tangens Opis float atan float argument Zwraca w radianach arcus tangens argumentu. Zobacz też atanh, asin i acos. atanh Odwrotny tangens hiperboliczny Opis float atanh float arg Zwraca odwrotny tangens hiperboliczny z liczby arg, tzn. taką wartość, dla której tangens hiperboliczny jest równy arg. ¬e.no-windows; Zobacz też atan, asin and acos. atan2 Arcus tangens dwóch zmiennych Opis float atan2 float y float x Ta funkcja oblicza arcus tangens dwóch zmiennych x i y. Jej działanie przypomina obliczanie arcus tangens z y / x, a do tego, znaki obydwu argumentów wykorzystywane są do określenia ćwiartki (kwadrantu) układu współrzędnych. Funkcja zwraca wartość w radianach, zawierającą się między -PI a PI włącznie. Zobacz też acos i atan. base_convert Konwertuje liczbę pomiędzy różnymi systemami liczbowymi Opis string base_convert string liczba int system_bazowy int system_docelowy Zwraca łańcuch znaków zawierający liczbę w reprezentacji w system_docelowy. System w którym podajemy liczbę jest określony w system_bazowy. Parametry system_bazowy i system_docelowy muszą zawierać się pomiędzy 2 a 36 włącznie. Cyfry w liczbach o bazie większej niż 10 są reprezentowane za pomocą liter a-z, gdzie a oznacza 10, b oznacza 11, a z oznacza 35. <function>base_convert</function> bindec Konwertuje liczbę dwójkową na dziesiętną Opis int bindec string liczba_dwójkowa Zwraca liczbę dziesiętną odpowiadającą liczbie dwójkowej podane w argumencie liczba_dwójkowa. bindec konwertuje liczby dwójkowe do liczb całkowitych. Największą konwertowaną liczbą jest 31 bitów 1 czyli 2 147 483 647 dziesiętnie. Zobacz też decbin. ceil Zaokrągla ułamki w górę Opis float ceil float liczba Zwraca nabliższą liczbę całkowitą, większą lub równą podanemu argumentowi liczba. Zwracana przez funkcję ceil wartość jest nadal typu float gdyż zakres tego typu jest zwykle większy niż zakres typu int. Zobacz też floor i round. cos Cosinus Opis float cos float argument Zwraca cosinus kąta argument podanego w radianach. Zobacz też sin i tan. cosh Cosinus hiperboliczny Opis float cosh float arg Zwraca cosinus hiperboliczny z liczby arg, definiowany jako (exp(arg) + exp(-arg))/2. Zobacz też cos, acosh, sin and tan. decbin Konwertuje liczbę dziesiętną do dwójkowej Opis string decbin int liczba Zwraca łańcuch znaków stanowiący dwójkową reprezentację liczby dziesiętnej podanej jako argument. Największą liczbą możliwą do skonwertowania jest 2 147 483 647 dziesiętnie, co równe jest 31 bitom 1. Zobacz też bindec. dechex Konwersja liczby dziesiętnej do szesnastkowej Opis string dechex int liczba Zwraca łańcuch znaków stanowiący szesnastkową reprezentację podanej liczby dziesiętnej. Największą liczbą, która może być skonwertowana jest 2 147 483 647 dziesiętnie, co odpowiada "7fffffff" szesnastkowo. Zobacz też hexdec. decoct Konwersja liczby dziesiętnej do ósemkowej Opis string decoct int liczba Zwraca łańcuch znaków zawierający ósemkową reprezentację podanej liczby dziesiętnej. Największ liczbą, która może być skonwertowana jest 2 147 483 647 dziesiętnie, co odpowiada "17777777777" ósemkowo. Zobacz też octdec. deg2rad Przelicza stopnie na radiany Opis float deg2rad float liczba deg2rad przelicza stopnie podane w liczba na radiany. Zobacz też rad2deg. exp e do potęgi ... Opis float exp float argument Zwraca e podniesione do potęgi argument. Zobacz też pow. floor Zaokrągla ułamki w dół Opis float floor float liczba Zwraca najbliższą liczbę całkowitą, mniejszą lub równą podanemu arumentowi liczba. Zwracana przez funkcję floor wartość jest nadal typu float gdyż zakres tego typu jest zwykle większy niż zakres typu int. Zobacz też ceil i round. getrandmax Największa możliwa liczba losowa Opis int getrandmax Zwraca największą liczbę, jaka może być zwrócona przez funkcję rand. Zobacz też rand, srand, mt_rand, mt_srand, i mt_getrandmax. hexdec Konwersja liczby szesnastkowej do dziesiętnej Opis int hexdec string hex_string Zwraca dziesiętny odpowiednik liczby szesnastkowej podanej w argumencie hex_string. hexdeckownertuje szesnastkowy łańcuch znaków do postaci liczby dziesiętnej. Największą liczbą, która może być skonwertowana jest 7fffffff, czyli 2147483647 dziesiętnie. hexdec zastąpi każdy znak, nie będący cyfrą w systemie szesnastkowym liczbą 0. W ten sposób, wszystko zera stojące z lewej strony są ignorowane, ale zera z prawej strony są brane pod uwagę. Przykład zastosowania <function>hexdec</function> Zobacz też dechex. lcg_value Złożony przystający generator liniowy Opis float lcg_value lcg_value zwraca liczbę pseudolosową z przedziału (0, 1). Funkcja łączy dwa CG o okresach 2^31 - 85 i 2^31 - 249. Okres tej funkcji jest równy wartości obydwu składowych. log Logarytm naturalny Opis float log float argument Zwraca logarytm naturalny z liczby argument. log10 Logarytm dziesiętny Opis float log10 float argument Zwraca logarytm dziesiętny z argument. max Znajduje największą liczbę Opis mixed max mixed arg1 mixed arg2 mixed argn max zwraca największą liczbę spośród podanych argumentów. Jeśli pierwszy argument jest tablicą, max zwróci największą liczbę z tej tablicy. Jeśli pierwszy argument jest liczbą całkowitą, zmiennoprzecinkową czy łańcuchem znaków, musisz mieć conajmniej dwa argumenty, spomiędzy których funkcja max zwróci największą wartość. Za pomocą tej funkcji możesz porównywać nieograniczoną ilość liczb. Jeśli jedna lub więcej podanych liczb jest zmiennoprzecinkowa, wszystkie liczby zostaną potraktowane jak zmiennoprzecinkowe i także liczba zmiennoprzecinkowa zostanie zwrócona. Jeśli żadna z liczb nie będzie zmiennoprzecinkową, wszystkie zostaną potraktowane jako całkowite i liczba całkowita zostanie zwrócona. min Znajduje najmniejszą wartość Opis number min number arg1 number arg2 ... number min array liczby min zwraca najmniejszą liczbę spośród podanych argumentów. W pierwszym wariancie, po podaniu co najmniej dwóch argumentów, min zwróci najmniejszy z nich. Można porównywać nieograniczoną ilość wartości. W drugim wariancie, min zwróci najmniejszą wartość z tablicy liczby. Jeśli jedna lub więcej wartości jest typu , wszystkie wartości zostaną potraktowane jako zmiennoprzecinkowe i taka też liczba zostanie zwrócona. Jeśli żadna spośród wartości nie jest typu float, wszystkie zostaną potraktowane jako integer i wartość całkowita zostanie zwrócona. mt_rand Wygeneruj lepszą liczbę losową Opis int mt_rand int mt_rand int min int max Wiele generatorów liczb losowych w starych libc mają niepewne albo nieznane charakterystyki i są powolne. Domyślnie PHP używa generatora liczb losowych z libc w funkcji rand. Funkcja mt_rand jest jej zamiennikiem. Używa ona generatora liczb losowych o znanej charakterystyce, Mersenne Twistera, który generuje liczby losowe w sam raz dla większości potrzeb kryptografii (aby dowiedzieć się więcej, zajrzyj na strony www Mersenne Twistera) i działa cztery razy szybciej od typowych generatorów zawartych w libc. Stronę www Mersene Twistera można znaleźć pod adresem &url.mersenne;, a zoptymalizowaną wersję kodu źródłowego MT pod adresem &url.mersenne.twister;. Jeśli funkcja zostanie wywołana bez opcjonalnych argumentów min i max, funkcja mt_rand zwróci liczbę pseudolosową z przedziału pomiędzy 0 a RAND_MAX. Jeśli na przykład potrzebujesz liczby losowej z przedziału od 5 do 15 włącznie, użyj mt_rand (5, 15). Pamiętaj, aby przed użyciem tej funkcji inicjalizować generator liczb losowych za pomocą mt_srand. W wersjach przed 3.0.7 argument max znaczył zakres. Aby otrzymać takie same wyniki w tychże wersjach, należy użyć mt_rand (5, 11) aby otrzymać liczbę losową z przedziału od 5 do 15. Zobacz też mt_srand, mt_getrandmax, srand, rand i getrandmax. mt_srand Inicjalizuj generator Mersenne Twister Opis void mt_srand int ziarno Inicjalizuje generator liczb losowych za pomocą ziarna ziarno. Zobacz też mt_rand, mt_getrandmax, srand, rand, i getrandmax. mt_getrandmax Największa możliwa liczba losowa Opis int mt_getrandmax Zwraca największą liczbę losową, jaką może zwrócić funkcja mt_rand. Zobacz też mt_rand, mt_srand rand, srand, i getrandmax. number_format Formatuje liczbę według szablonu Opis string number_format float liczba int miejsc_dziesiętnych string przecinek_dziesiętny string separator_tysięcy Funkcja number_format zwraca sformatowaną liczbę liczba według podanych argumentów. Ta funkcja przyjmuje jeden, dwa lub cztery argumenty (nie trzy): Jeśli podany jest tylko jeden argument, liczba zostanie sformatowana bez miejsc dziesiętnych ale z przecinkiem (",") pomiędzy każdą grupą tysięcy. Jeśli podane są dwa argumenty, liczba będzie sformatowana z miejsc_dziesiętnych, z kropką (".") w charakterze przecinka dziesiętnego i przecinkiem (",") pomiędzy każdą grupą tysięcy. Kiedy wszystkie cztery parametry są podane, liczba liczba będzie sformatowana z miejsc_dziesiętnych, z przecinek_dziesiętny zamiast kropki (".") i separator_tysięcy pomiędzy każdą grupą tysięcy. Tylko pierwszy znak z separator_tysięcy jest wykorzystywany. Na przykład, jeśli użyjesz foo jako separatora, to z liczby 1000 funkcja zwróci 1f000. <function>number_format</function> - przykłady W polskiej notacji liczbowej używa się przecinka (",") jako przecinka dziesiętnego i spacji (" ") jako separatora tysięcy. W PHP można to zrobić tak: Zobacz też sprintf, printf i sscanf. octdec Konwersja liczby ósemkowej do dziesiętnej Opis int octdec string liczba_ósemkowa Zwraca dziesiętny odpowiednik liczby ósemkowej podanej jako argument liczba_ósemkowa. OctDec zamienia an łańcuch ósemkowy na liczbę dziesiętną. Największą liczbą, jaka może być skonwertowana jest 17777777777 ósemkowo, czyli 2147483647 dziesiętnie. Zobacz też decoct. pi Wartość liczby Pi Opis float pi Zwraca przybliżoną wartość liczby pi. pow Potęgowanie Opis number pow number podstawa number wykładnik Zwraca argument podstawa podniesiony do potęgi wykładnik. Jeśli możliwe, funkcja zwróci typ integer. Jeśli nie da się obliczyć potęgi, zostanie wyświetlone ostrzeżenie a funkcja pow zwróci &false;. Parę przykładów z <function>pow</function> ]]> W PHP 4.0.6 i wcześniejszych funkcja pow zawsze zwracała typ float i nie wyświetlała ostrzeżeń. Zobacz też exp. rad2deg Przelicza radiany na stopnie. Opis float rad2deg float liczba rad2deg przelicza kąt liczba podany w radianach na jego odpowiednik w stopniach. Zobacz też deg2rad. rand Wygeneruj liczbę losową Opis int rand int rand int min int max Jeśli wywołana bez opcjonalnych argumentów min i max, funkcja rand zwraca liczbę pseudolosową z przedziału pomiędzy 0 a RAND_MAX. Jeśli potrzebujesz liczby losowej z przedziału np. od 5 do 15 (włącznie), użyj rand (5,15). Pamiętaj, aby przed użyciem tej funkcji inicjalizować generator liczb losowych za pomocą srand. W wersjach przed 3.0.7 argument max znaczył zakres. Aby otrzymać takie same wyniki w tychże wersjach, należy użyć rand (5, 11) aby otrzymać liczbę losową z przedziału od 5 do 15. Zobacz też srand, getrandmax, mt_rand, mt_srand i mt_getrandmax. round Zaokrągla liczbę zmiennoprzecinkową Opis float round float wartość int dokładność Zwraca zaokrągloną wartość argumentu wartość do miejsca po przecinku określonego w dokładność. dokładność może być także ujemny lub równy zero (domyślnie). PHP domyślnie nie obsługuje poprawnie łańcuchów znaków takich jak "12,300.2". Zobacz konwersje z łańcuchów znaków . Argument dokładność jest dostępny tylko w PHP 4. Zobacz też ceil i floor. sin Sinus Opis float sin float Zwraca sinus kąta argument podanego w radianach. Zobacz też cos i tan. sinh Sinus hiperboliczny Opis float sinh float arg Zwraca sinus hiperboliczny z liczby arg, definiowany jako (exp(arg) - exp(-arg))/2. Zobacz też sin, asinh, cos and tan. sqrt Pierwiastek kwadratowy Opis float sqrt float argument Zwraca pierwiastek kwadratowy z argument. srand Inicjalizuje generator liczb losowych Opis void srand int ziarno Inicjalizuje generator liczb losowych za pomocą ziarna ziarno. Zobacz też rand, getrandmax, mt_rand, mt_srand, i mt_getrandmax. tan Tangens Opis float tan float argument Zwraca tangens kąta argument podanego w radianach. Zobacz też sin i cos. tanh Tangens hiperboliczny Opis float tanh float arg Zwraca tangens hiperboliczny z liczby arg, definiowanej jako sinh(arg)/cosh(arg). Zobacz też tan, atanh, sin and cos.