结果是小数?

时间:2013-09-08 22:30:21

标签: php mysql rows decimal

好吧所以我一直在尝试在两个不同的表中创建两个值加起来一个数字。它用于发布和评论用户已完成的数量。 .$Author['id'].从另一个php文件读取,并且它是如何的好。

当我使用下面的代码时,一切正常,但数字是小数。因此,如果$result的值为4且$result2为2,则会出现0.6。通过将echo替换为echo "$num_rows";,我确保结果或num_rows没有任何问题,并且它会得到正确的结果。但是,为什么当我尝试将它们加在一起时它们会变成小数?

<?php

$link = mysql_connect("--------", "---------", "--------");
mysql_select_db("--------", $link);

$result = mysql_query("SELECT * FROM post_threads WHERE author = '".$Author['id']."'", $link);
$num_rows = mysql_num_rows($result);

$result2 = mysql_query("SELECT * FROM post_comments WHERE userid = '".$Author['id']."'", $link);
$num_rows2 = mysql_num_rows($result2);

$a = array(".$num_rows." + ".$num_rows2.");
echo "" . array_sum($a) . "\n";

?>

2 个答案:

答案 0 :(得分:1)

您必须更改此行:

$a = array(".$num_rows." + ".$num_rows2.");
echo "" . array_sum($a) . "\n";

为:

$a =$num_rows + $num_rows2;
echo $a. "\n";

如果你想使用一个数组,(我不知道为什么),应该是:

$a = array($num_rows,$num_rows2);
echo array_sum($a) . "\n";

将引号中的变量关闭,您将它们转换为字符串

答案 1 :(得分:1)

不确定您对代码的最后两行的含义,但我建议如下:

$a = array($num_rows, $num_rows2);
echo array_sum($a) . "\n";

希望能为你效力