Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php数字格式错误_Php - Fatal编程技术网

php数字格式错误

php数字格式错误,php,Php,我从我的一个exchange站点得到了这个错误警告:number_format()希望参数1是双精度的,在第165行的/home/rainingt/public_html/quadhits/index.php中给出。但不是从另一个网络主机获取的。当两个站点来自同一脚本时,会出现什么问题 <tr> <td style="color: black">Pages shown today</td> <td style="color: #33669

我从我的一个exchange站点得到了这个错误
警告:number_format()希望参数1是双精度的,在第165行的/home/rainingt/public_html/quadhits/index.php中给出。但不是从另一个网络主机获取的。当两个站点来自同一脚本时,会出现什么问题

<tr>
    <td style="color: black">Pages shown today</td>
    <td style="color: #336699; font-weight: bold">: <?=number_format($C->sfrfv('sum(num)', '7statsite', 'where date="'.date('Y-m-d').'"'), 0, '', ' ')?></td>
</tr>
<tr>
    <td style="color: black">Pages yesterday</td>
    <td style="color: #336699; font-weight: bold">: <?=number_format($C->sfrfv('sum(num)', '7statsite', 'where date="'.date('Y-m-d', time() - 86400).'"'), 0, '', ' ')?></td>
</tr>
<tr>
    (page165)<td style="color: black">Unique surfers today</td>
<td style="color: #336699; font-weight: bold">: <?= number_format( $C->sfrfv('count(usrid)', '7stat', 'where date="'.date('Y-m-d').'" group by date'), 0, '', ' ')?></td>
</tr>
<tr>
    <td style="color: black">Unique surfers yesterday</td>
<td style="color: #336699; font-weight: bold">: <?=number_format($C->sfrfv('count(usrid)', '7stat', 'where date="'.date('Y-m-d', time() - 86400).'" group by date'), 0, '', ' ')?>
</tr>

今天显示的页面

:PHP可以设置为禁用警告(在PHP.ini中),这就是两个webhost行为不同的原因。你可以阅读更多关于这方面的内容


至于删除警告,您可以做两件事。您可以使
$C->sfrfv()
返回一个double,或者您可以在每次调用中将返回转换为double,方法如下:
(double)$C->sfrfv()
(假设它应该返回一个数字)。

您似乎在有问题的行+1上缺少一个
,但这不会触发类似的错误。您可以尝试删除多余的空格(在number_format和$C之前,与没有错误的行相比),看看是否有帮助。我看不出有任何其他差异可以解释这个错误。额外的空间不应该有影响,但谁知道呢

错误消息表示$C作为对象返回,而不是从其方法sfrfv()返回数值结果。如果省略数字\格式(),只输出原始数字。。。那会出现什么


我肯定会确保您在两个系统上都收到相同级别的错误消息(每个SuperTron),并且确保您不会忽略从一个对象到一个数字的伪值返回。

这个函数是什么:
$C->sfrfv()
在做什么?您可以发布itDoes
$C->sfrfv()
return double的代码吗?您的代码中有一个错误,特别是在
$C->sfrfv
函数中。您在一台主机上看到错误,但在另一台主机上没有看到错误,这是由于不同的配置造成的。