Midwest PHP Call For Papers Open

# pow

(PHP 4, PHP 5, PHP 7)

powВозведение в степень

### Описание

pow ( number `\$base` , number `\$exp` ) : number

Возвращает `base`, возведенное в степень `exp`.

Замечание:

В PHP 5.6 и выше вы можете использовать оператор **.

### Список параметров

`base`

Основание

`exp`

Показатель степени

### Возвращаемые значения

Основание `base` возведенное в степень `exp`. Если оба аргумента - неотрицательные целые и результат может быть представлен как целое, то возвращаемый результат будет типа integer. В ином случае результат будет типа float.

### Примеры

Пример #1 Примеры использования pow()

``` <?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 5 notes

36
chris at ocportal dot com
7 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. ```
14
gilthansREMOVEME at gmail dot com
12 years ago
``` Note that pow(0, 0) equals to 1 although mathematically this is undefined. ```
raiika
1 year ago
``` It is official now that you could use <?php2 ** 3; // 8// instead ofpow(2, 3); // 8?> ```
scott at arciszewski dot me
5 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);?> ```
jaxx1rr at gmail dot com
1 month ago
``` funny thingnumber_format(pow(2, 1023));gives a long numberbut number_format(pow(2, 1024));gives inf ``` 