PHP 5.5.16 is released

pow

(PHP 4, PHP 5)

powExpresión exponencial

Descripción

number pow ( number $base , number $exp )

Devuelve el valor de base elevado a la potencia exp.

Nota:

En PHP 5.6 en adelante, se podría preferir el empleo del operador **.

Parámetros

base

La base a emplear

exp

El exponente

Valores devueltos

base elevada a la potencia de exp. Si ambos argumentos son números enteros no negativos y el resultado puede ser representado como un entero, el resultado será devuelto con tipo integer; de lo contrario se devuelve como un float.

Historial de cambios

Versión Descripción
4.2.0 No se emite una advertencia, incluso si el valor no puede ser calculado.
4.0.6 Ahora la función devolverá resultados de tipo integer, si es posible. Antes siempre devolvía un resultado de tipo float. Para versiones anteriores, puede que se reciba un resultado falso para números complejos.

Ejemplos

Ejemplo #1 Algunos ejemplos de pow()

<?php

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

echo pow(-15.5); // PHP >4.0.6  NAN
echo pow(-15.5); // PHP <=4.0.6 1.#IND
?>

Notas

Nota:

Esta función convertirá toda entrada en un número, incluso valores no escalares, lo cual podría conducir a resultados extraños.

Ver también

  • exp() - Calcula la exponencial de e
  • sqrt() - Raíz cuadrada
  • bcpow() - Elevar un número de precisión arbitraria a otro
  • gmp_pow() - Aumenta el número a la potencia

add a note add a note

User Contributed Notes 3 notes

up
14
chris at ocportal dot com
2 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
2
scott at arciszewski dot me
6 months 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
6
gilthansREMOVEME at gmail dot com
7 years ago
Note that pow(0, 0) equals to 1 although mathematically this is undefined.
To Top