在PHP中添加/分割数字

4

我正在开发一个需要计算三个数字平均值的Facebook应用程序。但是,它总是返回0作为答案。这是我的代码:

$y = 100;
$n = 250;
$m = 300;
$number = ($y + $n + $m / 3);
echo 'Index: '.$number;

它总是显示索引:0

有什么想法吗?


所以,使用您编辑过的版本,它会显示“索引:450”。使用Casablanca修复运算符优先级后,“索引216.666666667”。您还有这个问题吗? - JAL
实际上.. 一切都是正确的。数据库中的所有数字都设置为0! :) 已经更正了,但我该如何四舍五入结果? - Zac Brown
3个回答

11
$y = 100;
$n = 250;
$m = 300;
$number = ($y + $n + $m) / 3;
echo 'Index: '.$number;

另外,你在前三行末尾漏掉了;


1
@Zach,不是这样的。所以很可能,$y、$n和$m没有按照你的期望进行初始化。 - Matthew Flaschen
@zerkms,那个起作用了..这意味着问题出在数据库中的数字上。但是,我还需要将其四舍五入到最近的整数。有 PHP 的方法可以实现吗? - Zac Brown
@Zachary Brown:只需用 floor() 包装所有表达式即可。 - zerkms
我非常抱歉如果我的问题很愚蠢,但是它不应该显示一个值吗?例如:(100 + 250 + 100)= 450。或者我错了吗?因为他错过了获取返回的3个平均值的形式,但这并不意味着数学就此停止。 - Periklis Kakarakidis
它不应该显示一个值吗?在哪里显示,由什么显示? - zerkms
显示剩余2条评论

4

你的括号分组有误。应该这样做:

$number = ($y + $n + $m) / 3;

@Zachary Brown:你之前的几行代码缺少分号 - 这样连解析都不行,我很奇怪你是如何得到一个0的。 - casablanca

1

两个问题:

您在这些行的末尾缺少;

$y = 100
$n = 250
$m = 300

而且,/ 操作符比 + 的优先级更高,因此你需要这样做:

$number = ($y + $n + $m) / 3;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接