$string = 3;
for ($i=0; $i<$string; $i++) {
for($j=0; $j<$string; $j++) {
print $arr[$i][$j] = rand(1,5);
}
print "<br>";
}
基本上这段代码会输出类似
的内容5 5 4
2 5 2
4 5 3
我想在屏幕上打印类似5 + 5 + 4 + 2 + 5 + 2 + 4 + 5 + 3 = 35
我尝试了多种方法,但是在正确的位置打印+时我很难挣扎。
答案 0 :(得分:1)
如果我理解正确,那么您可以使用以下代码:
$arr = array();
$string = 3;
$temp = array();
$sum = 0;
for ($i=0; $i < $string; $i++) {
for($j=0; $j<$string; $j++) {
$arr[$i][$j] = rand(1,5);
$sum += $arr[$i][$j];
$temp[] = $arr[$i][$j];
}
}
echo implode(' + ', $temp).' = '.$sum;
结果:
2 + 5 + 3 + 3 + 4 + 2 + 5 + 3 + 1 = 28
编辑(没有implode
函数[评论中的OP请求]):
$arr = array();
$string = 3;
$temp = '';
$sum = 0;
for ($i = 0; $i < $string; $i++) {
for($j = 0; $j < $string; $j++) {
$arr[$i][$j] = rand(1,5);
$sum += $arr[$i][$j];
if ($i == ($string - 1) && $j == ($string - 1)) {
$temp .= $arr[$i][$j];
} else {
$temp .= $arr[$i][$j].' + ';
}
}
}
echo $temp.' = '.$sum;
结果:
1 + 2 + 1 + 3 + 2 + 3 + 5 + 4 + 5 = 26