Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : BCMath Arbitrary Precision Mathematics Functions : bcpow

bcpow

Raise an arbitrary precision number to another (PHP 4, PHP 5)
string bcpow ( string left_operand, string right_operand [, int scale] )

Raise left_operand to the power right_operand.

Parameters

left_operand

The left operand, as a string.

right_operand

The right operand, as a string.

scale

This optional parameter is used to set the number of digits after the decimal place in the result. You can also set the global default scale for all functions by using bcscale().

Return Values

Returns the result as a string.

Examples

Example 341. bcpow() example

<?php

echo bcpow('4.2', '3', 2); // 74.08

?>


See Also
bcpowmod()
bcsqrt()

Related Examples ( Source code ) » bcpow


Code Examples / Notes » bcpow

11-feb-2005 09:58

Well, if bcpow has limits, then this should work:
<?php
function bcpow_($num, $power) {
   $awnser = "1";
   while ($power) {
       $awnser = bcmul($awnser, $num, 100);
       $power = bcsub($power, "1");
   }
   return rtrim($awnser, '0.');
}
?>
Just that $power cannot have decimal digits in it.


michael bailey jinxidoru

bcpow() only supports exponents less than or equal to 2^31-1.  Also, bcpow() does not support decimal numbers.  If you have scale set to 0, then the exponent is converted to an interger; otherwise an error is generated.
--
Michael Bailey
http://www.jinxidoru.com


Change Language


Follow Navioo On Twitter
bcadd
bccomp
bcdiv
bcmod
bcmul
bcpow
bcpowmod
bcscale
bcsqrt
bcsub
eXTReMe Tracker