日期:2014-05-17  浏览次数:20512 次

不知是字符集的问题还是算法问题

for($r=1;$r<=$rows;$r++){
    for($n=$rows;$n>$r;$n--){
echo "&nbsp";
}
    for($m=0;$m<$r ;$m++){
echo "*";
}
echo "<br>";
}

为了实现
但是现在变成了

是我算法的问题吗?我用IE浏览器打开,默认GB2312字符集的话显示的就是正确的,UTF-8显示的就是不对。
请问是字符集的问题才出现这样的情况吗,如何解决?谢谢!~

------解决方案--------------------
当然不是算法问题!
本来这种题目是在文本方式下测试的,你放到html中当然是要有些问题的
$rows = 12;
echo '<pre>';
for($r=1;$r<=$rows;$r++){
  for($n=$rows;$n>$r;$n--){
    echo " ";
  }
  for($m=0;$m<$r ;$m++){
    echo "*";
  }
  echo PHP_EOL;
}
这样就不变形了