检查变量是否在POWER base + PHP中

时间:2016-06-16 08:38:24

标签: php math

我想检查输入变量是否在POWER基础中。

例如:

输入:25; //是幂功率(5,2) 输入:26; //没有权力

我制作了一段代码但是花了很长时间

$var = 25;
$half = round($var / 2);
for($x = 0; $x <= $half; $x++){
    for($y = 0; $y <= $half; $y++){
        if(pow($x, $y) === $var){
            $output = "1";
        }
    }
}
if(!$output){
    echo "0";
}else{
    echo "1";
}    

1 个答案:

答案 0 :(得分:1)

您可以使用sqrt返回给定数字的平方根,然后检查返回的值是否为十进制值。

$var = 25;
$sqrt = sqrt($var);
if($sqrt !== floor( $sqrt )) {
    echo 'no power';
} else {
    echo 'power';
}