我有两个文件:index.php 和 logspace.php。在 logspace.php 我有一个函数 logspace 返回一个数组。我从 index.php 调用这个函数。然后我想检查这个返回的数组是否有一定的值但是'in_array'函数不起作用。
index.php 中的代码:
<?php
include 'logSpace.php';
$tmp=logspace(0.1,10,9);
$Tr=0.1;
if(in_array($Tr,$tmp))
{
echo 'true';
}
else
{
echo 'false';
}
?>
即使值显然在数组中,我总是得到“假”:
var_dumb($Tr);
float(0.1)
var_dump($tmp);
array(10) { [0]=> float(0.1) [1]=> float(0.16681005372001) [2]=> float(0.27825594022071) [3]=> float(0.46415888336128) [4]=> float(0.77426368268113) [5]=> float(1.2915496650149) [6]=> float(2.1544346900319) [7]=> float(3.5938136638046) [8]=> float(5.9948425031894) [9]=> float(10) }
logSpace.php 中的代码
function logspace($start,$end,$num)
{
$arr=array();
$logMin=log($start);
$logMax=log($end);
$delta=($logMax-$logMin)/$num;
$accDelta=0;
for($i=0;$i<=$num;$i++)
{
$num_i=pow(M_E,$logMin+$accDelta);
$arr[]=$num_i;
$accDelta+=$delta;
}
return $arr;
}
?>