PHPerKaigi 2025

pow

(PHP 4, PHP 5, PHP 7, PHP 8)

pow指数表現

説明

pow(mixed $num, mixed $exponent): int|float|object

numexponent 乗を返します。

注意:

** 演算子も使えます。

パラメータ

num

使用する基数。

exponent

指数。

戻り値

numexponent 乗を返します。 両方の引数が非負の整数で、かつ結果が int 型の範囲に収まる場合は、結果を int 型で返します。 それ以外の場合は結果を float 型で返します。

PHP の拡張モジュールは、この演算の振る舞いを上書きし、オブジェクトを返させても構いません。

変更履歴

バージョン 説明
8.4.0 基数が 0 の場合に、 exponent を負数とするのは非推奨となりました。

例1 pow() の例

<?php

var_dump
(pow(2, 8)); // int(256)
echo pow(-1, 20), PHP_EOL; // 1
echo pow(0, 0), PHP_EOL; // 1
echo pow(10, -1), PHP_EOL; // 0.1
var_dump(pow(new GMP("3"), new GMP("2"))); // object(GMP)

echo pow(-1, 5.5); // NAN

?>

注意

注意:

この関数はすべての入力を (スカラー値以外でも) 数値に変換します。 その結果、予想外の 結果を引き起こすことがあります。

参考

  • べき乗演算子 **
  • fpow() - IEEE 754 に従い、数値をべき乗する
  • exp() - e の累乗を計算する
  • sqrt() - 平方根
  • bcpow() - 任意精度数値をべき乗する
  • gmp_pow() - べき乗を計算する

add a note

User Contributed Notes 2 notes

up
18
gilthansREMOVEME at gmail dot com
18 years ago
Note that pow(0, 0) equals to 1 although mathematically this is undefined.
up
2
Roman
4 years ago
If you use negative numbers, you need to use brackets for using with **

<?php

-1 ** 2; // -1

(-1) ** 2; // 1

?>
To Top