pow

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

powExpression exponentielle

Description

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

Retourne base élevé à la puissance exp.

Note:

Depuis PHP 5.6, vous pourriez préférer utiliser l'opérateur **.

Liste de paramètres

base

La base à utiliser

exp

L'exponentielle

Valeurs de retour

base élevé à la puissance exp. Si les arguments ne sont pas des entiers négatifs, et que le résultat peut être représenté sous la forme d'un entier, le résultat sera entier, sinon si il sera retourné en tant que nombre décimal.

Exemples

Exemple #1 Exemple avec pow()

<?php

var_dump
(pow(28)); // int(256)
echo pow(-120); // 1
echo pow(00); // 1
echo pow(10, -1); // 0.1

echo pow(-15.5); // PHP >=5.2.2: NAN
echo pow(-15.5); // PHP <5.2.2: -NAN
?>

Notes

Note:

Cette fonction convertira toutes les entrées en un nombre, y compris pour les valeurs non-scalaires, ce qui peut amener à des résultats imprévisibles.

Voir aussi

  • exp() - Calcul l'exponentielle de e
  • sqrt() - Racine carrée
  • bcpow() - Élève un nombre à une puissance donnée
  • gmp_pow() - Puissance

add a note add a note

User Contributed Notes 6 notes

up
39
chris at ocportal dot com
11 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.
up
13
gilthansREMOVEME at gmail dot com
17 years ago
Note that pow(0, 0) equals to 1 although mathematically this is undefined.
up
7
raiika
5 years ago
It is official now that you could use

<?php

2
** 3; // 8

// instead of

pow(2, 3); // 8

?>
up
3
scott at arciszewski dot me
10 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);
?>
up
0
Roman
3 years ago
If you use negative numbers, you need to use brackets for using with **

<?php

-1 ** 2; // -1

(-1) ** 2; // 1

?>
up
0
jaxx1rr at gmail dot com
4 years ago
funny thing

number_format(pow(2, 1023));
gives a long number

but number_format(pow(2, 1024));
gives inf
To Top