leszek Fri Nov 30 03:06:54 2001 EDT Added files: /phpdoc/pl/functions math.xml Log: Math.xml FINISHED! After more than six weeks...
Index: phpdoc/pl/functions/math.xml +++ phpdoc/pl/functions/math.xml <?xml version="1.0" encoding="iso-8859-2"?> <!-- $Revision: 1.1 $ --> <!-- tłumacz Tomasz Wójtowicz <[EMAIL PROTECTED]> tłumaczone z wersji 1.2 angielskiego math.xml 2001-10-12 aktualizacja do wersji en 1.8 z naszego CVSu w dniu 2001-11-29 --> <reference id="ref.math"> <title>Funkcje Matematyczne</title> <titleabbrev>Math</titleabbrev> <partintro> <sect1 id="math.intro"> <title>Wprowadzenie</title> <para> Omówione poniżej funkcje operują na wartościach z przedziałów typów <type>integer</type> i <type>float</type> na twoim komputerze (co odpowiada zakresowi long resp. double języka C). Jeśli potrzebujesz obsługi większych liczb, zajrzyj do <link linkend="ref.bc">funkcji matematycznych dla liczb dowolnej dokładności </link> </para> <sect2 id="math.constants"> <title>Stałe matematyczne</title> <para> Poniższe wartości są zdefiniowane w PHP jako stałe w rozszerzeniu matematycznym: <table> <title>Stałe matematyczne</title> <tgroup cols="3"> <thead> <row> <entry>Stała</entry> <entry>Wartosć</entry> <entry>Opis</entry> </row> </thead> <tbody> <row> <entry>M_PI</entry> <entry>3.14159265358979323846</entry> <entry>Pi</entry> </row> <row> <entry>M_E</entry> <entry>2.7182818284590452354</entry> <entry>e</entry> </row> <row> <entry>M_LOG2E</entry> <entry>1.4426950408889634074</entry> <entry>log_2 e</entry> </row> <row> <entry>M_LOG10E</entry> <entry>0.43429448190325182765</entry> <entry>log_10 e</entry> </row> <row> <entry>M_LN2</entry> <entry>0.69314718055994530942</entry> <entry>log_e 2</entry> </row> <row> <entry>M_LN10</entry> <entry>2.30258509299404568402</entry> <entry>log_e 10</entry> </row> <row> <entry>M_PI_2</entry> <entry>1.57079632679489661923</entry> <entry>pi/2</entry> </row> <row> <entry>M_PI_4</entry> <entry>0.78539816339744830962</entry> <entry>pi/4</entry> </row> <row> <entry>M_1_PI</entry> <entry>0.31830988618379067154</entry> <entry>1/pi</entry> </row> <row> <entry>M_2_PI</entry> <entry>0.63661977236758134308</entry> <entry>2/pi</entry> </row> <row> <entry>M_SQRTPI</entry> <entry>1.77245385090551602729</entry> <entry>sqrt(pi) [4.0.2]</entry> </row> <row> <entry>M_2_SQRTPI</entry> <entry>1.12837916709551257390</entry> <entry>2/sqrt(pi)</entry> </row> <row> <entry>M_SQRT2</entry> <entry>1.41421356237309504880</entry> <entry>sqrt(2)</entry> </row> <row> <entry>M_SQRT3</entry> <entry>1.73205080756887729352</entry> <entry>sqrt(3) [4.0.2]</entry> </row> <row> <entry>M_SQRT1_2</entry> <entry>0.70710678118654752440</entry> <entry>1/sqrt(2)</entry> </row> <row> <entry>M_LNPI</entry> <entry>1.14472988584940017414</entry> <entry>log_e(pi) [4.0.2]</entry> </row> <row> <entry>M_EULER</entry> <entry>0.57721566490153286061</entry> <entry>Stała Eulera [4.0.2]</entry> </row> </tbody> </tgroup> </table> 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. </para> </sect2> </sect1> </partintro> <refentry id="function.abs"> <refnamediv> <refname>abs</refname> <refpurpose>Wartość bezwględna (moduł z liczby)</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>mixed <function>abs</function></funcdef> <paramdef>mixed <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca wartość bezwzględną podanej liczby. Jeśli argument is typu <type>float</type>, zwracana wartość jest także <type>float</type>, inaczej zwracana jest wartość <type>integer</type> (<type>float</type> ma zwykle szerszy zakres niż <type>integer</type>). </para> </refsect1> </refentry> <refentry id="function.acos"> <refnamediv> <refname>acos</refname> <refpurpose>Arcus cosinus</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>acos</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca w radianach arcus cosinus argumentu. </para> <para> Zobacz też <function>acosh</function>, <function>asin</function> i <function>atan</function>. </para> </refsect1> </refentry> <refentry id="function.acosh"> <refnamediv> <refname>acosh</refname> <refpurpose>Odwrotny cosinus hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>acosh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca odwrotny cosinus hiperboliczny z liczby <parameter>arg</parameter>, tzn. taką wartość, której cosinus hiperboliczny równy <parameter>arg</parameter>. </para> ¬e.no-windows; <para> Zobacz też <function>acos</function>, <function>asin</function> and <function>atan</function>. </para> </refsect1> </refentry> <refentry id="function.asin"> <refnamediv> <refname>asin</refname> <refpurpose>Arcus sinus</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>asin</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca w radianach arcus sinus argumentu. </para> <para> Zobacz też <function>asinh</function>, <function>acos</function> i <function>atan</function>. </para> </refsect1> </refentry> <refentry id="function.asinh"> <refnamediv> <refname>asinh</refname> <refpurpose>Odwrotny sinus hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>asinh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca odwrotny sinus hiperboliczny z liczby <parameter>arg</parameter>, tzn. taką wartość, której sinus hiperboliczny jest równy <parameter>arg</parameter>. </para> ¬e.no-windows; <para> Zobacz też <function>asin</function>, <function>acos</function> and <function>atan</function>. </para> </refsect1> </refentry> <refentry id="function.atan"> <refnamediv> <refname>atan</refname> <refpurpose>Arcus tangens</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>atan</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca w radianach arcus tangens argumentu. </para> <para> Zobacz też <function>atanh</function>, <function>asin</function> i <function>acos</function>. </para> </refsect1> </refentry> <refentry id="function.atanh"> <refnamediv> <refname>atanh</refname> <refpurpose>Odwrotny tangens hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>atanh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca odwrotny tangens hiperboliczny z liczby <parameter>arg</parameter>, tzn. taką wartość, dla której tangens hiperboliczny jest równy <parameter>arg</parameter>. </para> ¬e.no-windows; <para> Zobacz też <function>atan</function>, <function>asin</function> and <function>acos</function>. </para> </refsect1> </refentry> <refentry id="function.atan2"> <refnamediv> <refname>atan2</refname> <refpurpose>Arcus tangens dwóch zmiennych</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>atan2</function></funcdef> <paramdef>float <parameter>y</parameter></paramdef> <paramdef>float <parameter>x</parameter></paramdef> </funcprototype> </funcsynopsis> <simpara> Ta funkcja oblicza arcus tangens dwóch zmiennych <parameter>x</parameter> i <parameter>y</parameter>. Jej działanie przypomina obliczanie arcus tangens z <parameter>y</parameter> / <parameter>x</parameter>, a do tego, znaki obydwu argumentów wykorzystywane są do określenia ćwiartki (kwadrantu) układu współrzędnych. </simpara> <simpara> Funkcja zwraca wartość w radianach, zawierającą się między -PI a PI włącznie. </simpara> <para> Zobacz też <function>acos</function> i <function>atan</function>. </para> </refsect1> </refentry> <refentry id="function.base-convert"> <refnamediv> <refname>base_convert</refname> <refpurpose>Konwertuje liczbę pomiędzy różnymi systemami liczbowymi </refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>string <function>base_convert</function></funcdef> <paramdef>string <parameter>liczba</parameter></paramdef> <paramdef>int <parameter>system_bazowy</parameter></paramdef> <paramdef>int <parameter>system_docelowy</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca łańcuch znaków zawierający <parameter>liczbę</parameter> w reprezentacji w <parameter>system_docelowy</parameter>. System w którym podajemy liczbę jest określony w <parameter>system_bazowy</parameter>. Parametry <parameter>system_bazowy</parameter> i <parameter>system_docelowy</parameter> 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. <example> <title><function>base_convert</function></title> <programlisting role="php"> <![CDATA[ $binary = base_convert ($hexadecimal, 16, 2); ]]> </programlisting> </example> </para> </refsect1> </refentry> <refentry id="function.bindec"> <refnamediv> <refname>bindec</refname> <refpurpose>Konwertuje liczbę dwójkową na dziesiętną</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>bindec</function></funcdef> <paramdef>string <parameter>liczba_dwójkowa</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca liczbę dziesiętną odpowiadającą liczbie dwójkowej podane w argumencie <parameter>liczba_dwójkowa</parameter>. </para> <para> <function>bindec</function> konwertuje liczby dwójkowe do liczb całkowitych. Największą konwertowaną liczbą jest 31 bitów 1 czyli 2 147 483 647 dziesiętnie. </para> <para> Zobacz też <function>decbin</function>. </para> </refsect1> </refentry> <refentry id="function.ceil"> <refnamediv> <refname>ceil</refname> <refpurpose>Zaokrągla ułamki w górę</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>ceil</function></funcdef> <paramdef>float <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <simpara> Zwraca nabliższą liczbę całkowitą, większą lub równą podanemu argumentowi <parameter>liczba</parameter>. Zwracana przez funkcję <function>ceil</function> wartość jest nadal typu <type>float</type> gdyż zakres tego typu jest zwykle większy niż zakres typu <type>int</type>. </simpara> <simpara> Zobacz też <function>floor</function> i <function>round</function>. </simpara> </refsect1> </refentry> <refentry id="function.cos"> <refnamediv> <refname>cos</refname> <refpurpose>Cosinus</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>cos</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca cosinus kąta <parameter>argument</parameter> podanego w radianach. </para> <para> Zobacz też <function>sin</function> i <function>tan</function>. </para> </refsect1> </refentry> <refentry id="function.cosh"> <refnamediv> <refname>cosh</refname> <refpurpose>Cosinus hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>cosh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca cosinus hiperboliczny z liczby <parameter>arg</parameter>, definiowany jako <literal>(exp(arg) + exp(-arg))/2</literal>. </para> <para> Zobacz też <function>cos</function>, <function>acosh</function>, <function>sin</function> and <function>tan</function>. </para> </refsect1> </refentry> <refentry id="function.decbin"> <refnamediv> <refname>decbin</refname> <refpurpose>Konwertuje liczbę dziesiętną do dwójkowej</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>string <function>decbin</function></funcdef> <paramdef>int <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> 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. </para> <para> Zobacz też <function>bindec</function>. </para> </refsect1> </refentry> <refentry id="function.dechex"> <refnamediv> <refname>dechex</refname> <refpurpose>Konwersja liczby dziesiętnej do szesnastkowej</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>string <function>dechex</function></funcdef> <paramdef>int <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> 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. </para> <para> Zobacz też <function>hexdec</function>. </para> </refsect1> </refentry> <refentry id="function.decoct"> <refnamediv> <refname>decoct</refname> <refpurpose>Konwersja liczby dziesiętnej do ósemkowej</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>string <function>decoct</function></funcdef> <paramdef>int <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> 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. </para> <para> Zobacz też <function>octdec</function>. </para> </refsect1> </refentry> <refentry id="function.deg2rad"> <refnamediv> <refname>deg2rad</refname> <refpurpose> Przelicza stopnie na radiany </refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>deg2rad</function></funcdef> <paramdef>float <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>deg2rad</function> przelicza stopnie podane w <parameter>liczba</parameter> na radiany. </para> <para> Zobacz też <function>rad2deg</function>. </para> </refsect1> </refentry> <refentry id="function.exp"> <refnamediv> <refname>exp</refname> <refpurpose>e do potęgi ...</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>exp</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca e podniesione do potęgi <parameter>argument</parameter>. </para> <para> Zobacz też <function>pow</function>. </para> </refsect1> </refentry> <refentry id="function.floor"> <refnamediv> <refname>floor</refname> <refpurpose>Zaokrągla ułamki w dół</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>floor</function></funcdef> <paramdef>float <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <simpara> Zwraca najbliższą liczbę całkowitą, mniejszą lub równą podanemu arumentowi <parameter>liczba</parameter>. Zwracana przez funkcję <function>floor</function> wartość jest nadal typu <type>float</type> gdyż zakres tego typu jest zwykle większy niż zakres typu <type>int</type>. </simpara> <simpara> Zobacz też <function>ceil</function> i <function>round</function>. </simpara> </refsect1> </refentry> <refentry id="function.getrandmax"> <refnamediv> <refname>getrandmax</refname> <refpurpose>Największa możliwa liczba losowa</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>getrandmax</function></funcdef> <void/> </funcprototype> </funcsynopsis> <simpara> Zwraca największą liczbę, jaka może być zwrócona przez funkcję <function>rand</function>. </simpara> <simpara> Zobacz też <function>rand</function>, <function>srand</function>, <function>mt_rand</function>, <function>mt_srand</function>, i <function>mt_getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.hexdec"> <refnamediv> <refname>hexdec</refname> <refpurpose>Konwersja liczby szesnastkowej do dziesiętnej</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>hexdec</function></funcdef> <paramdef>string <parameter>hex_string</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca dziesiętny odpowiednik liczby szesnastkowej podanej w argumencie <parameter>hex_string</parameter>. <function>hexdec</function>kownertuje 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. </para> <para> <function>hexdec</function> zastąpi każdy znak, nie będący cyfrą w systemie szesnastkowym liczbą <literal>0</literal>. W ten sposób, wszystko zera stojące z lewej strony są ignorowane, ale zera z prawej strony są brane pod uwagę. <example> <title>Przykład zastosowania <function>hexdec</function></title> <programlisting role="php"> <![CDATA[ var_dump(hexdec("See")); var_dump(hexdec("ee")); // obydwa zwracają "int(238)" var_dump(hexdec("that")); var_dump(hexdec("a0")); // obydwa zwracają int(160) ]]> </programlisting> </example> </para> <para> Zobacz też <function>dechex</function>. </para> </refsect1> </refentry> <refentry id="function.lcg-value"> <refnamediv> <refname>lcg_value</refname> <refpurpose>Złożony przystający generator liniowy</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>lcg_value</function></funcdef> <void/> </funcprototype> </funcsynopsis> <para> <function>lcg_value</function> 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. </para> </refsect1> </refentry> <refentry id="function.log"> <refnamediv> <refname>log</refname> <refpurpose>Logarytm naturalny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>log</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca logarytm naturalny z liczby <parameter>argument</parameter>. </para> </refsect1> </refentry> <refentry id="function.log10"> <refnamediv> <refname>log10</refname> <refpurpose>Logarytm dziesiętny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>log10</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca logarytm dziesiętny z <parameter>argument</parameter>. </para> </refsect1> </refentry> <refentry id="function.max"> <refnamediv> <refname>max</refname> <refpurpose>Znajduje największą liczbę</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>mixed <function>max</function></funcdef> <paramdef>mixed <parameter>arg1</parameter></paramdef> <paramdef>mixed <parameter>arg2</parameter></paramdef> <paramdef>mixed <parameter>argn</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>max</function> zwraca największą liczbę spośród podanych argumentów. </para> <para> Jeśli pierwszy argument jest tablicą, <function>max</function> 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 <function>max</function> zwróci największą wartość. Za pomocą tej funkcji możesz porównywać nieograniczoną ilość liczb. </para> <para> 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. </para> </refsect1> </refentry> <refentry id="function.min"> <refnamediv> <refname>min</refname> <refpurpose>Znajduje najmniejszą wartość</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>number <function>min</function></funcdef> <paramdef>number <parameter>arg1</parameter></paramdef> <paramdef>number <parameter>arg2</parameter></paramdef> <paramdef><parameter><optional>...</optional></parameter></paramdef> </funcprototype> <funcprototype> <funcdef>number <function>min</function></funcdef> <paramdef>array <parameter>liczby</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>min</function> zwraca najmniejszą liczbę spośród podanych argumentów. </para> <para> W pierwszym wariancie, po podaniu co najmniej dwóch argumentów, <function>min</function> zwróci najmniejszy z nich. Można porównywać nieograniczoną ilość wartości. </para> <para> W drugim wariancie, <function>min</function> zwróci najmniejszą wartość z tablicy <parameter>liczby</parameter>. </para> <para> 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 <type>float</type>, wszystkie zostaną potraktowane jako <type>integer</type> i wartość całkowita zostanie zwrócona. </para> </refsect1> </refentry> <refentry id="function.mt-rand"> <refnamediv> <refname>mt_rand</refname> <refpurpose>Wygeneruj lepszą liczbę losową</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>mt_rand</function></funcdef> <void/> </funcprototype> <funcprototype> <funcdef>int <function>mt_rand</function></funcdef> <paramdef>int <parameter>min</parameter> </paramdef> <paramdef>int <parameter>max</parameter> </paramdef> </funcprototype> </funcsynopsis> <simpara> 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 <function>rand</function>. Funkcja <function>mt_rand</function> 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 <ulink url="&url.mersenne;">&url.mersenne;</ulink>, a zoptymalizowaną wersję kodu źródłowego MT pod adresem <ulink url="&url.mersenne.twister;">&url.mersenne.twister;</ulink>. </simpara> <simpara> Jeśli funkcja zostanie wywołana bez opcjonalnych argumentów <parameter>min</parameter> i <parameter>max</parameter>, funkcja <function>mt_rand</function> zwróci liczbę pseudolosową z przedziału pomiędzy 0 a <constant>RAND_MAX</constant>. Jeśli na przykład potrzebujesz liczby losowej z przedziału od 5 do 15 włącznie, użyj <literal>mt_rand (5, 15)</literal>. </simpara> <simpara> Pamiętaj, aby przed użyciem tej funkcji inicjalizować generator liczb losowych za pomocą <function>mt_srand</function>. </simpara> <note> <para> W wersjach przed 3.0.7 argument <parameter>max</parameter> znaczył <parameter>zakres</parameter>. Aby otrzymać takie same wyniki w tychże wersjach, należy użyć <literal>mt_rand (5, 11)</literal> aby otrzymać liczbę losową z przedziału od 5 do 15. </para> </note> <simpara> Zobacz też <function>mt_srand</function>, <function>mt_getrandmax</function>, <function>srand</function>, <function>rand</function> i <function>getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.mt-srand"> <refnamediv> <refname>mt_srand</refname> <refpurpose>Inicjalizuj generator Mersenne Twister</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>void <function>mt_srand</function></funcdef> <paramdef>int <parameter>ziarno</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Inicjalizuje generator liczb losowych za pomocą ziarna <parameter>ziarno</parameter>. <informalexample> <programlisting role="php"> <![CDATA[ // naziarnij mikrosekundami function make_seed() { list($usec,$sec) = explode(" ", microtime()); return ((float)$sec+(float)$usec) * 100000; } mt_srand(make_seed()); $randval = mt_rand(); ]]> </programlisting> </informalexample> </para> <simpara> Zobacz też <function>mt_rand</function>, <function>mt_getrandmax</function>, <function>srand</function>, <function>rand</function>, i <function>getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.mt-getrandmax"> <refnamediv> <refname>mt_getrandmax</refname> <refpurpose>Największa możliwa liczba losowa</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>mt_getrandmax</function></funcdef> <void/> </funcprototype> </funcsynopsis> <simpara> Zwraca największą liczbę losową, jaką może zwrócić funkcja <function>mt_rand</function>. </simpara> <simpara> Zobacz też <function>mt_rand</function>, <function>mt_srand</function> <function>rand</function>, <function>srand</function>, i <function>getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.number-format"> <refnamediv> <refname>number_format</refname> <refpurpose>Formatuje liczbę według szablonu</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>string <function>number_format</function></funcdef> <paramdef>float <parameter>liczba</parameter></paramdef> <paramdef>int <parameter><optional>miejsc_dziesiętnych</optional> </parameter></paramdef> <paramdef>string <parameter><optional>przecinek_dziesiętny</optional> </parameter></paramdef> <paramdef>string <parameter><optional>separator_tysięcy</optional> </parameter></paramdef> </funcprototype> </funcsynopsis> <para> Funkcja <function>number_format</function> zwraca sformatowaną liczbę <parameter>liczba</parameter> według podanych argumentów. Ta funkcja przyjmuje jeden, dwa lub cztery argumenty (nie trzy): </para> <para> Jeśli podany jest tylko jeden argument, <parameter>liczba</parameter> zostanie sformatowana bez miejsc dziesiętnych ale z przecinkiem (",") pomiędzy każdą grupą tysięcy. </para> <para> Jeśli podane są dwa argumenty, <parameter>liczba</parameter> będzie sformatowana z <parameter>miejsc_dziesiętnych</parameter>, z kropką (".") w charakterze przecinka dziesiętnego i przecinkiem (",") pomiędzy każdą grupą tysięcy. </para> <para> Kiedy wszystkie cztery parametry są podane, <parameter>liczba</parameter> liczba będzie sformatowana z <parameter>miejsc_dziesiętnych</parameter>, z <parameter>przecinek_dziesiętny</parameter> zamiast kropki (".") i <parameter>separator_tysięcy</parameter> pomiędzy każdą grupą tysięcy. </para> <note> <para> Tylko pierwszy znak z <parameter>separator_tysięcy</parameter> jest wykorzystywany. Na przykład, jeśli użyjesz <literal>foo</literal> jako separatora, to z liczby <literal>1000</literal> funkcja zwróci <literal>1f000</literal>. </para> </note> <para> <example> <title><function>number_format</function> - przykłady</title> <para> 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: </para> <programlisting role="php"> <![CDATA[ <?php $liczba = 1234.56; // notacja angielska (domyślna) $notacja_angielska = number_format($liczba); // 1,234.56 // notacja polska $notacja_polska = number_format($liczba, 2, ',', ' '); // 1 234,56 $number = 1234.5678; // notacja angielska bez separatora tysięcy $notacja_angielska = number_format($liczba, 2, '.', ''); // 1234.56 ?> ]]> </programlisting> </example> </para> <note> <para> Zobacz też <function>sprintf</function>, <function>printf</function> i <function>sscanf</function>. </para> </note> </refsect1> </refentry> <refentry id="function.octdec"> <refnamediv> <refname>octdec</refname> <refpurpose>Konwersja liczby ósemkowej do dziesiętnej</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>octdec</function></funcdef> <paramdef>string <parameter>liczba_ósemkowa</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca dziesiętny odpowiednik liczby ósemkowej podanej jako argument <parameter>liczba_ósemkowa</parameter>. 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. </para> <para> Zobacz też <function>decoct</function>. </para> </refsect1> </refentry> <refentry id="function.pi"> <refnamediv> <refname>pi</refname> <refpurpose>Wartość liczby Pi</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>pi</function></funcdef> <void/> </funcprototype> </funcsynopsis> <simpara> Zwraca przybliżoną wartość liczby pi. </simpara> <para> <informalexample> <programlisting> <![CDATA[ echo pi(); // wyświetli 3.1415926535898 ]]> </programlisting> </informalexample> </para> </refsect1> </refentry> <refentry id="function.pow"> <refnamediv> <refname>pow</refname> <refpurpose>Potęgowanie</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>number <function>pow</function></funcdef> <paramdef>number <parameter>podstawa</parameter></paramdef> <paramdef>number <parameter>wykładnik</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca argument <parameter>podstawa</parameter> podniesiony do potęgi <parameter>wykładnik</parameter>. Jeśli możliwe, funkcja zwróci typ <type>integer</type>. </para> <para> Jeśli nie da się obliczyć potęgi, zostanie wyświetlone ostrzeżenie a funkcja <function>pow</function> zwróci &false;. </para> <example> <title>Parę przykładów z <function>pow</function></title> <programlisting role="php"> <![CDATA[ <?php var_dump( pow(2,8) ); // int(256) echo pow(-1,20); // 1 echo pow(0, 0); // 1 echo pow(-1, 5.5); // błąd ?> ]]> </programlisting> </example> <warning> <para> W PHP 4.0.6 i wcześniejszych funkcja <function>pow</function> zawsze zwracała typ <type>float</type> i nie wyświetlała ostrzeżeń. </para> </warning> <para> Zobacz też <function>exp</function>. </para> </refsect1> </refentry> <refentry id="function.rad2deg"> <refnamediv> <refname>rad2deg</refname> <refpurpose> Przelicza radiany na stopnie. </refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>rad2deg</function></funcdef> <paramdef>float <parameter>liczba</parameter></paramdef> </funcprototype> </funcsynopsis> <para> <function>rad2deg</function> przelicza kąt <parameter>liczba</parameter> podany w radianach na jego odpowiednik w stopniach. </para> <para> Zobacz też <function>deg2rad</function>. </para> </refsect1> </refentry> <refentry id="function.rand"> <refnamediv> <refname>rand</refname> <refpurpose>Wygeneruj liczbę losową</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>int <function>rand</function></funcdef> <void/> </funcprototype> <funcprototype> <funcdef>int <function>rand</function></funcdef> <paramdef>int <parameter>min</parameter> </paramdef> <paramdef>int <parameter>max</parameter> </paramdef> </funcprototype> </funcsynopsis> <simpara> Jeśli wywołana bez opcjonalnych argumentów <parameter>min</parameter> i <parameter>max</parameter>, funkcja <function>rand</function> zwraca liczbę pseudolosową z przedziału pomiędzy 0 a <constant>RAND_MAX</constant>. Jeśli potrzebujesz liczby losowej z przedziału np. od 5 do 15 (włącznie), użyj <literal>rand (5,15)</literal>. </simpara> <simpara> Pamiętaj, aby przed użyciem tej funkcji inicjalizować generator liczb losowych za pomocą <function>srand</function>. </simpara> <note> <para> W wersjach przed 3.0.7 argument <parameter>max</parameter> znaczył <parameter>zakres</parameter>. Aby otrzymać takie same wyniki w tychże wersjach, należy użyć <literal>rand (5, 11)</literal> aby otrzymać liczbę losową z przedziału od 5 do 15. </para> </note> <simpara> Zobacz też <function>srand</function>, <function>getrandmax</function>, <function>mt_rand</function>, <function>mt_srand</function> i <function>mt_getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.round"> <refnamediv> <refname>round</refname> <refpurpose>Zaokrągla liczbę zmiennoprzecinkową</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>round</function></funcdef> <paramdef>float <parameter>wartość</parameter></paramdef> <paramdef>int <parameter><optional>dokładność</optional></parameter> </paramdef> </funcprototype> </funcsynopsis> <para> Zwraca zaokrągloną wartość argumentu <parameter>wartość</parameter> do miejsca po przecinku określonego w <parameter>dokładność</parameter>. <parameter>dokładność</parameter> może być także ujemny lub równy zero (domyślnie). </para> <para> <caution> <simpara> PHP domyślnie nie obsługuje poprawnie łańcuchów znaków takich jak <literal>"12,300.2"</literal>. Zobacz <link linkend="language.types.string.conversion">konwersje z łańcuchów znaków </link>. </simpara> </caution> </para> <para> <informalexample> <programlisting role="php"> <![CDATA[ $foo = round(3.4); // $foo == 3.0 $foo = round(3.5); // $foo == 4.0 $foo = round(3.6); // $foo == 4.0 $foo = round(3.6, 0); // znaczy to samo, co zapis 1 wiersz wyżej $foo = round(1.95583, 2); // $foo == 1.96 $foo = round(1241757, -3); // $foo == 1242000 ]]> </programlisting> </informalexample> </para> <note> <simpara> Argument <parameter>dokładność</parameter> jest dostępny tylko w PHP 4. </simpara> </note> <simpara> Zobacz też <function>ceil</function> i <function>floor</function>. </simpara> </refsect1> </refentry> <refentry id="function.sin"> <refnamediv> <refname>sin</refname> <refpurpose>Sinus</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>sin</function></funcdef> <paramdef>float </paramdef> </funcprototype> </funcsynopsis> <para> Zwraca sinus kąta <parameter>argument</parameter> podanego w radianach. </para> <para> Zobacz też <function>cos</function> i <function>tan</function>. </para> </refsect1> </refentry> <refentry id="function.sinh"> <refnamediv> <refname>sinh</refname> <refpurpose>Sinus hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>sinh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca sinus hiperboliczny z liczby <parameter>arg</parameter>, definiowany jako <literal>(exp(arg) - exp(-arg))/2</literal>. </para> <para> Zobacz też <function>sin</function>, <function>asinh</function>, <function>cos</function> and <function>tan</function>. </para> </refsect1> </refentry> <refentry id="function.sqrt"> <refnamediv> <refname>sqrt</refname> <refpurpose>Pierwiastek kwadratowy</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>sqrt</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca pierwiastek kwadratowy z <parameter>argument</parameter>. </para> </refsect1> </refentry> <refentry id="function.srand"> <refnamediv> <refname>srand</refname> <refpurpose>Inicjalizuje generator liczb losowych</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>void <function>srand</function></funcdef> <paramdef>int <parameter>ziarno</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Inicjalizuje generator liczb losowych za pomocą ziarna <parameter>ziarno</parameter>. <informalexample> <programlisting role="php"> <![CDATA[ // naziarnij mikrosekundami function make_seed() { list($usec,$sec) = explode(" ", microtime()); return ((float)$sec+(float)$usec) * 100000; } srand(make_seed()); $randval = rand(); ]]> </programlisting> </informalexample> </para> <simpara> Zobacz też <function>rand</function>, <function>getrandmax</function>, <function>mt_rand</function>, <function>mt_srand</function>, i <function>mt_getrandmax</function>. </simpara> </refsect1> </refentry> <refentry id="function.tan"> <refnamediv> <refname>tan</refname> <refpurpose>Tangens</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>tan</function></funcdef> <paramdef>float <parameter>argument</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca tangens kąta <parameter>argument</parameter> podanego w radianach. </para> <para> Zobacz też <function>sin</function> i <function>cos</function>. </para> </refsect1> </refentry> <refentry id="function.tanh"> <refnamediv> <refname>tanh</refname> <refpurpose>Tangens hiperboliczny</refpurpose> </refnamediv> <refsect1> <title>Opis</title> <funcsynopsis> <funcprototype> <funcdef>float <function>tanh</function></funcdef> <paramdef>float <parameter>arg</parameter></paramdef> </funcprototype> </funcsynopsis> <para> Zwraca tangens hiperboliczny z liczby <parameter>arg</parameter>, definiowanej jako <literal>sinh(arg)/cosh(arg)</literal>. </para> <para> Zobacz też <function>tan</function>, <function>atanh</function>, <function>sin</function> and <function>cos</function>. </para> </refsect1> </refentry> </reference> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->