pow

(PHP 4, PHP 5, PHP 7)

pow거듭제곱 표현

설명

number pow ( number $base , number $exp )

baseexp승을 반환합니다.

Warning

PHP 4.0.6까지 pow()는 항상 float를 반환하였고, 경고를 발생하지 않았습니다.

인수

base

사용할 밑

exp

승수

반환값

baseexp승. 결과가 정수로 표현될 수 있으면 integer형으로 반환하고, 그렇지 않으면 float형으로 반환합니다. 거듭제곱을 계산할 수 없으면 FALSE를 반환합니다.

변경점

버전 설명
4.0.6부터 가능하면 결과를 interger로 반환합니다. 이전에는 항상 float로 결과를 반환했습니다. 오래된 버전에서는 복잡한 수에 대해서 이상한 결과를 얻을 수도 있습니다.
4.2.0부터 PHP가 값을 계산할 수 없을 때, 경고를 발생하지 않습니다. 조용히 FALSE만 반환합니다.

예제

Example #1 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
?>

참고

  • exp() - e의 누승을 계산
  • sqrt() - 평방 제곱근
  • bcpow() - 임의 정밀도 수 거듭제곱
  • gmp_pow() - Raise number into power

add a note add a note

User Contributed Notes 6 notes

up
42
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
1
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
8
raiika
5 years ago
It is official now that you could use

<?php

2
** 3; // 8

// instead of

pow(2, 3); // 8

?>
up
13
gilthansREMOVEME at gmail dot com
17 years ago
Note that pow(0, 0) equals to 1 although mathematically this is undefined.
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
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