PHP 5.4.31 Released

# pow

(PHP 4, PHP 5)

powExponential expression

### Descrierea

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

Returns `base` raised to the power of `exp`.

Notă:

In PHP 5.6 onwards, you may prefer to use the ** operator.

`base`

The base to use

`exp`

The exponent

### Valorile întoarse

`base` raised to the power of `exp`. If both arguments are non-negative integers and the result can be represented as an integer, the result will be returned with integer type, otherwise it will be returned as a float.

### Istoria schimbărilor

Versiunea Descriere
4.2.0 No warning is emitted on errors, even if the value can't be computed.
4.0.6 The function will now return integer results if possible, before this it always returned a float result. For older versions, you may receive a bogus result for complex numbers.

### Exemple

Example #1 Some examples of pow()

``` <?phpvar_dump(pow(2, 8)); // int(256)echo pow(-1, 20); // 1echo pow(0, 0); // 1echo pow(-1, 5.5); // PHP >4.0.6  NANecho pow(-1, 5.5); // PHP <=4.0.6 1.#IND?> ```

### Note

Notă:

This function will convert all input to a number, even non-scalar values, which could lead to weird results.

### Vedeți de asemenea

• exp() - Calculates the exponent of e
• sqrt() - Square root
• bcpow() - Raise an arbitrary precision number to another
• gmp_pow() - Raise number into power

``` 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. ```
``` 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);?> ```
``` Note that pow(0, 0) equals to 1 although mathematically this is undefined. ```