我有一个由用户输入的数字列表。我想数一数,然后得到:
1, 2, 3, 4, 5
)和请参阅:
// Outputs the numbers , " 1 4 1 1 5 "
// for example (no commas, order is as inputed by user)
echo $a;
#1:
if ($a == "1"){
$b++;
// Outputs the actual count but in steps,
// say there are 3 "1" then it outputs: 1 2 3 ,
// but I only want the 3.
echo $b;
}
如何覆盖递增的变量?然后我有我想要的东西或者我错了。是否有更好/更清洁的方法?
#2:
// outputs only a bunch of 11111
// (the right amount if i add them up)
echo count($a);
// outputs also a bunch of 111111
print strlen($a);
任何其他计算和获得总数的方式(不是总和,总共输入的数字)?
我一直在努力解决这个问题。显然,我是初学者,我很想了解。我检查了大约5本php书籍和php在线手册。如果有人能引导我朝着正确的方向前进,我将不胜感激。请:)
答案 0 :(得分:3)
这将按照您的要求执行。它将数字拆分为数组,使用array_sum计算所有元素,然后使用数组的大小来计算元素的总数。它还使用trim来清理用户可能输入的任何空格。
$split_numbers = explode(' ',trim($a));
$total_added = array_sum($split_numbers);
$total_numbers = sizeof($split_numbers);
您可以在行动here中看到此代码。