bcpow

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

bcpow任意精度数字的乘方

说明

bcpow(string $num, string $exponent, ?int $scale = null): string

numexponent 次方运算。

参数

num

string 类型的底数。

exponent

string 类型的指数。 如果指数不是整数,将被截断。 指数的有效范围取决于平台,但起码支持 -21474836482147483647 的范围。

scale

此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0

返回值

返回字符串类型的结果。

更新日志

版本 说明
7.3.0 现在 bcpow() 可以按想要的小数点位数返回数字。 而之前,返回的数字会忽略尾随零(trailing decimal zeroes)。

示例

示例 #1 bcpow() 示例

<?php

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

?>

注释

注意:

Before PHP 7.3.0 bcpow() may return a result with fewer digits after the decimal point than the scale parameter would indicate. This only occurs when the result doesn't require all of the precision allowed by the scale. For example:

示例 #2 bcpow() scale example

<?php
echo bcpow('5', '2', 2); // prints "25", not "25.00"
?>

参见

  • bcpowmod() - Raise an arbitrary precision number to another, reduced by a specified modulus
  • bcsqrt() - 任意精度数字的二次方根