Index: phpdoc/pl/functions/math.xml
+++ phpdoc/pl/functions/math.xml
Funkcje MatematyczneMathWprowadzenie
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:
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.
absWartość bezwględna (moduł z liczby)Opismixed absmixed 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).
acosArcus cosinusOpisfloat acosfloat argument
Zwraca w radianach arcus cosinus argumentu.
Zobacz też acosh,
asin i atan.
acoshOdwrotny cosinus hiperbolicznyOpisfloat acoshfloat 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.
asinArcus sinusOpisfloat asinfloat argument
Zwraca w radianach arcus sinus argumentu.
Zobacz też asinh, acos
i atan.
asinhOdwrotny sinus hiperbolicznyOpisfloat asinhfloat 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.
atanArcus tangensOpisfloat atanfloat argument
Zwraca w radianach arcus tangens argumentu.
Zobacz też atanh,
asin i acos.
atanhOdwrotny tangens hiperbolicznyOpisfloat atanhfloat 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.
atan2Arcus tangens dwóch zmiennychOpisfloat atan2float yfloat 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_convertKonwertuje liczbę pomiędzy różnymi systemami liczbowymi
Opisstring base_convertstring liczbaint system_bazowyint 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.
base_convertbindecKonwertuje liczbę dwójkową na dziesiętnąOpisint bindecstring 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.
ceilZaokrągla ułamki w góręOpisfloat ceilfloat 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.
cosCosinusOpisfloat cosfloat argument
Zwraca cosinus kąta argument podanego w radianach.
Zobacz też sin i tan.
coshCosinus hiperbolicznyOpisfloat coshfloat arg
Zwraca cosinus hiperboliczny z liczby arg,
definiowany jako (exp(arg) + exp(-arg))/2.
Zobacz też cos, acosh,
sin and tan.
decbinKonwertuje liczbę dziesiętną do dwójkowejOpisstring decbinint 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.
dechexKonwersja liczby dziesiętnej do szesnastkowejOpisstring dechexint 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.
decoctKonwersja liczby dziesiętnej do ósemkowejOpisstring decoctint 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
Opisfloat deg2radfloat liczbadeg2rad przelicza stopnie podane w
liczba na radiany.
Zobacz też rad2deg.
expe do potęgi ...Opisfloat expfloat argument
Zwraca e podniesione do potęgi argument.
Zobacz też pow.
floorZaokrągla ułamki w dółOpisfloat floorfloat 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.
getrandmaxNajwiększa możliwa liczba losowaOpisint 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.
hexdecKonwersja liczby szesnastkowej do dziesiętnejOpisint hexdecstring 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 hexdec
Zobacz też dechex.
lcg_valueZłożony przystający generator liniowyOpisfloat lcg_valuelcg_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.
logLogarytm naturalnyOpisfloat logfloat argument
Zwraca logarytm naturalny z liczby argument.
log10Logarytm dziesiętnyOpisfloat log10float argument
Zwraca logarytm dziesiętny z argument.
maxZnajduje największą liczbęOpismixed maxmixed arg1mixed arg2mixed argnmax 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.
minZnajduje najmniejszą wartośćOpisnumber minnumber arg1number arg2...number minarray liczbymin 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_randWygeneruj lepszą liczbę losowąOpisint mt_randint mt_randint
minint
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_srandInicjalizuj generator Mersenne TwisterOpisvoid mt_srandint ziarno
Inicjalizuje generator liczb losowych za pomocą ziarna
ziarno.
Zobacz też mt_rand,
mt_getrandmax, srand,
rand, i
getrandmax.
mt_getrandmaxNajwiększa możliwa liczba losowaOpisint mt_getrandmax
Zwraca największą liczbę losową, jaką może zwrócić funkcja
mt_rand.
Zobacz też mt_rand,
mt_srandrand,
srand, i
getrandmax.
number_formatFormatuje liczbę według szablonuOpisstring number_formatfloat liczbaint miejsc_dziesiętnychstring przecinek_dziesiętnystring 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.
number_format - 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.
octdecKonwersja liczby ósemkowej do dziesiętnejOpisint octdecstring 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.
piWartość liczby PiOpisfloat pi
Zwraca przybliżoną wartość liczby pi.
powPotęgowanieOpisnumber pownumber podstawanumber 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 pow
]]>
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.
Opisfloat rad2degfloat liczbarad2deg przelicza kąt liczba
podany w radianach na jego odpowiednik w stopniach.
Zobacz też deg2rad.
randWygeneruj liczbę losowąOpisint randint randint
minint
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.
roundZaokrągla liczbę zmiennoprzecinkowąOpisfloat roundfloat 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.
sinSinusOpisfloat sinfloat
Zwraca sinus kąta argument podanego w radianach.
Zobacz też cos i tan.
sinhSinus hiperbolicznyOpisfloat sinhfloat arg
Zwraca sinus hiperboliczny z liczby arg,
definiowany jako (exp(arg) - exp(-arg))/2.
Zobacz też sin, asinh,
cos and tan.
sqrtPierwiastek kwadratowyOpisfloat sqrtfloat argument
Zwraca pierwiastek kwadratowy z argument.
srandInicjalizuje generator liczb losowychOpisvoid srandint ziarno
Inicjalizuje generator liczb losowych za pomocą ziarna
ziarno.
Zobacz też rand,
getrandmax, mt_rand,
mt_srand, i
mt_getrandmax.
tanTangensOpisfloat tanfloat argument
Zwraca tangens kąta argument podanego w radianach.
Zobacz też sin i cos.
tanhTangens hiperbolicznyOpisfloat tanhfloat arg
Zwraca tangens hiperboliczny z liczby arg,
definiowanej jako sinh(arg)/cosh(arg).
Zobacz też tan, atanh,
sin and cos.