Matematikai függvények

String funkciók.
Első rész.
String funkciók.
Második rész.
Dátum
műveletek.
Matematikai
függvények.
Matematikai
konstansok.


Példa, az abs() függvény egyszerű meghívására.
<?php
$ertek= -24.56;
$abszolut_erteke = abs($ertek);
print("A ".$ertek." abszolut értéke: $abszolut_erteke");
?>
Programunk eredménye

A -24.56 abszolut értéke= 24.56

 


PHP Math Functions, azaz függvények

abs( )
abszolút érték
<?php
echo(abs(6.7) . "<br />");
echo(abs(-3) . "<br />");
echo(abs(3));
?>
A kapott eredmény.

6.7
3
3
acos( )
arkusz koszinusz
<?php
echo(acos(0.64) . "<br />");
echo(acos(0) . "<br />");
echo(acos(-1) . "<br />");
echo(acos(1) . "<br />");
echo(acos(2))
?>
0.87629806116834
1.5707963267949
3.1415926535898
0
NAN
acosh( )
area hiperbolikus koszinusz

Még nem kompatibilis, a Windows platformon
 
asin( )
arkusz szinusz
<?php
echo(asin(0.64) . "<br />");
echo(asin(0) . "<br />");
echo(asin(-1) . "<br />");
echo(asin(1) . "<br />");
echo(asin(2))
?>
0.69449826562656
0
-1.5707963267949
1.5707963267949
NAN
asinh( )
area hiperbolikus szinusz

Még nem kompatibilis, a Windows platformon
 
atan(x)
arkusz tangens
<?php
echo(atan(0.50) . "<br />");
echo(atan(-0.50) . "<br />");
echo(atan(5) . "<br />");
echo(atan(10) . "<br />");
echo(atan(-5) . "<br />");
echo(atan(-10))
?>
0.46364760900081
-0.46364760900081
1.373400766945
1.4711276743037
-1.373400766945
-1.4711276743037
atan2(x,y)
két változó arkusz tangense
<?php
echo(atan2(0.50,0.50) . "<br />");
echo(atan2(-0.50,-0.50) . "<br />");
echo(atan2(5,5) . "<br />");
echo(atan2(10,20) . "<br />");
echo(atan2(-5,-5) . "<br />");
echo(atan2(-10,10))
?>
0.78539816339745
-2.3561944901923
0.78539816339745
0.46364760900081
-2.3561944901923
-0.78539816339745
atanh( )
area hiperbolikus tangens
float atanh ( float $arg )
Az arg area hiperbolikus tangensével tér vissza,
azzal az értékkel, amelynek hiiperbolikus tangense
egyenlő az arg paraméterrel.

Megjegyzés:
Ez a függvény nem működik
Windows operációs rendszereken!
 
base_convert( )
Számot konvertálni.
Tetszőleges számrendszerbe vált át egy számot

<?php
$hexadecimális = "A37334" ;
$hexA3 = "A3" ;
$hexA = "A" ;
$hexB = "3" ;
$hexC = "7" ;
$hexD = "3" ;
$hexE = "3" ;
$hexF = "4" ;

echo base_convert ( $hexadecimális,16 , 2) . "<br />";
echo base_convert ( $hexA3,16 , 2) . "<br />";
echo base_convert ( $hexA,16 , 2) . "<br />";
echo base_convert ( $hexB,16 , 2) . "<br />";
echo base_convert ( $hexC,16 , 2) . "<br />";
echo base_convert ( $hexD,16 , 2) . "<br />";
echo base_convert ( $hexE,16 , 2) . "<br />";
echo base_convert ( $hexF,16 , 2) . "<br />";
?>
Lebegőpontos számoknál,
csak korlátozott pontossággal.
Pontosan ábrázolható lebegőpontos számok 10 alapúak,
de a 0,1 vagy 0,7 , nincs pontos ábrázolása
a lebegőpontos számok 2-es alapúak,
mellyel belsőleg, nem számít a méret a mantissza.
Ezért nem lehet őket alakítani
bináris megfelelőikre, veszteség nélküli pontossággal.


101000110111001100110100
10100011
1010
11
111
11
11
100
bindec( )
binárisból tizes számrendszerbe vált át
<?php
echo bindec("0011") . "<br />";
echo bindec("01") . "<br />";
echo bindec("11000110011") . "<br />";
echo bindec("111");
?>
3
1
1587
7
ceil( )
törtrésszel bíró számot felfelé kerekíti
<?php
echo(ceil(0.60) . "<br />");
echo(ceil(0.40) . "<br />");
echo(ceil(5) . "<br />");
echo(ceil(5.1) . "<br />");
echo(ceil(-5.1) . "<br />");
echo(ceil(-5.9))
?>
1
1
5
6
-5
-5
cos( )
koszinusz
<?php
echo(cos(3) . "<br />");
echo(cos(-3) . "<br />");
echo(cos(0) . "<br />");
echo(cos(M_PI) . "<br />");
echo(cos(2*M_PI))
?>
-0.98999249660045
-0.98999249660045
1
-1
1
cosh( )
hiperbolikus koszinusz
<?php
echo(cosh(3) . "<br />");
echo(cosh(-3) . "<br />");
echo(cosh(0) . "<br />");
echo(cosh(M_PI) . "<br />");
echo(cosh(2*M_PI))
?>
10.067661995778
10.067661995778
1
11.591953275522
267.74676148375
decbin( )
tízes számrendszerből kettesbe vált át
<?php
echo decbin("3") . "<br />";
echo decbin("1") . "<br />";
echo decbin("1587") . "<br />";
echo decbin("7");
?>
11
1
11000110011
111
dechex( )
tízes számrendszerből tizenhatosba vált át
<?php
echo dechex("30") . "<br />";
echo dechex("10") . "<br />";
echo dechex("1587") . "<br />";
echo dechex("70");
?>
1e
a
633
46
decoct( )
tízes számrendszerből nyolcasba vált át
<?php
echo decoct("30") . "<br />";
echo decoct("10") . "<br />";
echo decoct("1587") . "<br />";
echo decoct("70");
?>
36
12
3063
106
deg2rad( )
fokból radiánba vált át
<?php
echo deg2rad("30") . "<br />";
echo deg2rad("10") . "<br />";
echo deg2rad("1587") . "<br />";
echo deg2rad("70");
?>


Második:

<?php
$deg = 180;
$rad = deg2rad($deg);
echo "$deg degrees is equal to $rad radians";
?>
0.5235987755983
0.17453292519943
27.69837522915
1.221730476396

Második:

180 degrees is equal to 3.1415926535898 radians
exp( )
e a(z) ... -re emelve
<?php
echo(exp(1) . "<br />");
echo(exp(-1) . "<br />");
echo(exp(5) . "<br />");
echo(exp(10))
?>
2.718281828459
0.36787944117144
148.41315910258
22026.465794807
expm1( )
exp(number) - 1 pontos értéke, még ha a number 0-hoz közeli értékű is
"E" az Euler-állandó, alapja a természetes logaritmusnak (kb. 2,7183).
Megjegyzés:
Ez a funkció nem működik Windows operációs rendszereken.

<?php
echo(expm1(1) . "<br />");
echo(expm1(-1) . "<br />");
echo(expm1(5) . "<br />");
echo(expm1(10))
?>
 
floor( )
lefelé kerekíti a törtrésszel bíró számot
<?php
echo(floor(0.60) . "<br />");
echo(floor(0.40) . "<br />");
echo(floor(5) . "<br />");
echo(floor(5.1) . "<br />");
echo(floor(-5.1) . "<br />");
echo(floor(-5.9))
?>
0
0
5
5
-6
-6
fmod( )
....
<?php
$r = fmod(5,2);
echo $r
?<
1
getrandmax( )
a legnagyobb lehetséges véletlen számot adja vissza
<?php
echo(getrandmax());
?>
2147483647
hexdec( )
tizenhatos számrendszerből tízesbe vált át
<?php
echo hexdec("1e") . "<br />";
echo hexdec("a") . "<br />";
echo hexdec("11ff") . "<br />";
echo hexdec("cceeff");
?>
30
10
4607
13430527
hypot( )
a sqrt( num1*num1 + num2*num2) értékét adja vissza
<?php
echo hypot(2,3) . "<br />";
echo hypot(3,6) . "<br />";
echo hypot(3,6) . "<br />";
echo hypot(1,3);
?>
3.605551275464
6.7082039324994
6.7082039324994
3.1622776601684
is_finite( )
Igazat ad vissza, ha egy érték véges számú.
<?php
echo is_finite(2) . "<br />";
echo is_finite(log(0)) . "<br />";
echo is_finite(2000);
?>
1

1
is_infinite( )
Igazat ad vissza, ha egy érték végtelen számú.
<?php
echo is_infinite(2) . "<br />";
echo is_infinite(log(0)) . "<br />";
echo is_infinite(2000);
?>

1
is_nan( )
True, ha az érték nem több
<?php
echo is_nan(200) . "<br />";
echo is_nan(acos(1.01));
?>

1
lcg_value( )
Kombinált lineáris kongruencia generátor
<?php
echo lcg_value();
?>
0.051566150047959
log10( )
tízes alapú logaritmus
<?php
echo(log10(2.7183) . "<br />");
echo(log10(2) . "<br />");
echo(log10(1) . "<br />");
echo(log10(0) . "<br />");
echo(log10(-1))
?>
0.43429738512451
0.30102999566398
0
-INF
NAN
log1p( )
log(1 + number) pontos értékét adja vissza, akkor is ha a paraméter értéke 0-hoz közeli
Megjegyzés:
Ez a függvény jelenleg, még kisérleti fázisban van
log( )
természetes alapú logaritmus
<?php
echo(log(2.7183) . "<br />");
echo(log(2) . "<br />");
echo(log(1) . "<br />");
echo(log(0) . "<br />");
echo(log(-1))
?>
1.000006684914
0.69314718055995
0
-INF
NAN
max( )
megkeresi a legnagyobb értéket
<?php
echo(max(5,7) . "<br />");
echo(max(-3,5) . "<br />");
echo(max(-3,-5) . "<br />");
echo(max(7.25,7.30))
?>
7
5
-3
7.3
min( )
megkeresi a legkisebb értéket
<?php
echo(min(5,7) . "<br />");
echo(min(-3,5) . "<br />");
echo(min(-3,-5) . "<br />");
echo(min(7.25,7.30))
?>
5
-3
-5
7.25
mt_getrandmax()
visszaadja a lehetséges legnagyobb véletlenszámot
<?php
echo mt_getrandmax();
?>
2147483647
mt_rand( )
véletlenszámot generál.
<?php
echo(mt_rand() . "<br />");
echo(mt_rand() . "<br />");
echo(mt_rand(10,100))
?>
33582821
1541422671
51
mt_srand( )
beállítja a véletlenszám generátor kiinduló értékét
<?php
mt_srand(time());
echo(mt_rand());
?>
789978183
number_format()
ezres csoportosítással formázza a számot
<?php
echo number_format("1000000") . "<br />";
echo number_format("1000000",2) . "<br />";
echo number_format("1000000",2,",",".");
?>
1,000,000
1,000,000.00
1.000.000,00
octdec( )
nyolcas számrendszerből tízesbe vált át.
A octdec () függvény egy oktális számot decimális szám.
<?php
echo octdec("36") . "<br />";
echo octdec("12") . "<br />";
echo octdec("3063") . "<br />";
echo octdec("106");
?>
30
10
1587
70
pi( )
visszaadja pi értékét
<?php echo pi(); ?>
3.1415926535898
pow( )
hatványozás
<?php
echo pow(4,2) . "<br />";
echo pow(6,2) . "<br />";
echo pow(-6,2) . "<br />";
echo pow(-6,-2) . "<br />";
echo pow(-6,5.5);
?>
16
36
36
0.027777777777778
NAN
rad2deg( )
radiánból fokokra vált
<?php
$rad = M_PI;
$deg = rad2deg($rad);
echo "$rad radians is equal to $deg degrees";
?>
3.1415926535898 radians is equal to 180 degrees
rand( )
véletlenszámot generál
<?php
echo(rand() . "<br />");
echo(rand() . "<br />");
echo(rand(10,100))
?>
645342474
2013281904
12
round( )
lebegőpontos számot kerekít
<?php
echo(round(0.60) . "<br />");
echo(round(0.50) . "<br />");
echo(round(0.49) . "<br />");
echo(round(-4.40) . "<br />");
echo(round(-4.60))
?>
1
1
0
-4
-5
sin( )
szinusz
<?php
echo(sin(3) . "<br />");
echo(sin(-3) . "<br />");
echo(sin(0) . "<br />");
echo(sin(M_PI) . "<br />");
echo(sin(M_PI_2))
?>
0.14112000805987
-0.14112000805987
0
1.2246467991474E-16
1
sinh( )
hiperbolikus szinusz
<?php
echo(sinh(3) . "<br />");
echo(sinh(-3) . "<br />");
echo(sinh(0) . "<br />");
echo(sinh(M_PI) . "<br />");
echo(sinh(M_PI_2))
?>
10.01787492741
-10.01787492741
0
11.548739357258
2.3012989023073
sqrt( )
négyzetgyököt von
<?php
echo(sqrt(0) . "<br />");
echo(sqrt(1) . "<br />");
echo(sqrt(9) . "<br />");echo(sqrt(0.64) . "<br />");
echo(sqrt(-9))
?>
0
1
3
0.8
NAN
srand( )
Véletlenszámgenerátor kiinduló értékét állítja be
<?php
srand(time());
echo(rand());
?>
789978183
tan( )
tangens
<?php
echo(tan(M_PI_4) . "<br />");
echo(tan(0.50) . "<br />");
echo(tan(-0.50) . "<br />");
echo(tan(5) . "<br />");
echo(tan(10) . "<br />");
echo(tan(-5) . "<br />");
echo(tan(-10))
?>
1
0.54630248984379
-0.54630248984379
-3.3805150062466
0.64836082745909
3.3805150062466
-0.64836082745909
tanh( )
hiperbolikus tangens
<?php
echo(tanh(M_PI_4) . "<br />");
echo(tanh(0.50) . "<br />");
echo(tanh(-0.50) . "<br />");
echo(tanh(5) . "<br />");
echo(tanh(10) . "<br />");
echo(tanh(-5) . "<br />");
echo(tanh(-10))
?>
0.65579420263267
0.46211715726001
-0.46211715726001
0.9999092042626
0.99999999587769
-0.9999092042626
-0.99999999587769