数学関数


度単位とラジアン単位で変換する(deg2rad、rad2deg)

deg2rad()で度単位からラジアン単位へ、rad2deg()でラジアン単位から度単位へ変換します。

$val = 180;
echo deg2rad($val) . "\n";    // => 3.1415926535898

$val = M_PI;
echo rad2deg($val) . "\n";    // => 180


三角関数(sin, cos, tan)

sin(), cos(), tan()を使用します。引数はラジアン単位で指定します。

$val = M_PI;
echo sin($val) . "\n";    // => 1.2246467991474E-16(0にはなりませんでした)
echo cos($val) . "\n";    // => -1
echo tan($val) . "\n";    // => -1.2246467991474E-16(0にはなりませんでした)


逆三角関数(asin, acos, atan)

asin(), acos(), atan()を使用します。引数はラジアン単位で指定します。

$val = M_PI_4;
echo asin($val) . "\n";    // => 0.90333911076651
echo acos($val) . "\n";    // => 0.66745721602838
echo atan($val) . "\n";    // => 0.66577375002835


双曲線関数(sinh, cosh, tanh)

sinh(), cosh(), tanh()を使用します。

$val = 1;
echo sinh($val) . "\n";    // => 1.1752011936438
echo cosh($val) . "\n";    // => 1.5430806348152
echo tanh($val) . "\n";    // => 0.76159415595576


平方根(sqrt)

sqrt()を使います。

echo sqrt(100) . "\n";    // => 10


任意の累乗を求める(pow)

pow(base, exp)を使います。

echo pow(100, 0.5) . "\n";    // => 10(平方根と同じ)
echo pow(2, 2) . "\n";    // => 4
echo pow(2, 10) . "\n";    // => 1024


自然対数の底の累乗を求める(exp)

exp()を使います。

echo exp(2) . "\n";    // => 7.3890560989307


任意の底のlogを求める(log)

log(arg, base)を使います。第一引数に値、第二引数に底を指定します。

echo log(100, 10) . "\n";    // => 2


自然対数を底とするlogを求める(log)

log(arg)を使います。第一引数に値、第二引数は省略します。

echo log(M_E) . "\n";    // => 1