# pow

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

pow指数表現

### 説明

pow ( int|float `\$base` , int|float `\$exp` ) : int|float

`base``exp` 乗を返します。

PHP 5.6 以降では、 ** 演算子も使えます。

`base`

`exp`

### 返り値

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

### 例

``` <?phpvar_dump(pow(2, 8)); // int(256)echo pow(-1, 20); // 1echo pow(0, 0); // 1echo pow(10, -1); // 0.1echo pow(-1, 5.5); // PHP >=5.2.2: NANecho pow(-1, 5.5); // PHP <5.2.2: -NAN?> ```

### 注意

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

### 参考

• exp() - e の累乗を計算する
• sqrt() - 平方根
• bcpow() - 任意精度数値をべき乗する
• gmp_pow() - べき乗を計算する add a note

### User Contributed Notes 4 notes

33
chris at ocportal dot com
8 years ago
``` Many notations use "^" as a power operator, but in PHP (and other C-based languages) that is actually the XOR operator. You need to use this 'pow' function, there is no power operator.i.e. 3^2 means "3 XOR 2" not "3 squared".It is particular confusing as when doing Pythagoras theorem in a 'closet points' algorithm using "^" you get results that look vaguely correct but with an error. ```
12
gilthansREMOVEME at gmail dot com
14 years ago
``` Note that pow(0, 0) equals to 1 although mathematically this is undefined. ```
scott at arciszewski dot me
7 years ago
``` As of PHP 5.6.0alpha2, there is now an exponentiation operator. If this is kept in the final release, it may be worth noting here.<?php// These two will be equivalent as of PHP 5.6.0\$x = \$y ** 2;\$x = pow(\$y, 2);?> ```
raiika
2 years ago
``` It is official now that you could use <?php2 ** 3; // 8// instead ofpow(2, 3); // 8?> ``` 