当我执行以下命令时:
echo pow( -0.3741569180353 , 0.2 ) ;
我得到的结果是NAN
然而在Excel和计算器中,我得到的答案是-0.8215。
我有很多这样的计算,有什么解决方法可以修复这个问题吗?
pow()
无法处理负数的根。答案应该是 0.8215
还是 -0.8215
?**
(幂)运算符可以处理负数的根。echo -0.3741569180353 ** 0.2 ;
**
的优先级高于-
,所以实际上你所做的是:echo -(0.3741569180353 ** 0.2) ;
$v1 = -0.3741569180353;
$v2 = 0.2;
echo $v1 ** $v2;
- TVidz IN$v1 = -0.3741569180353; $v2 = 0.2; echo $v1 ** $v2 ; Result : NAN echo -( abs($v1) ** $v2 );
Result : -0.82150603063756 ` - TVidz IN
echo -0.3741569180353 ** 0.2;
。 - Mark Baker