<?php
$n=4;
for($i=0;$i<$n;$i++){
if($i==0){
for($j=0;$j<=($n-1);$j++){
echo "$nbsp";
}
echo "*";
}elseif($i==($n-1)){
for($j=0;$j<=($n-1);$j++){
echo"*";
}
}elseif {
for($j=0;$j<=($n-1-$i);$j++){
echo"$nbsp";
}
echo"*";
for($j=0;$j<=($i*2-1);$j++){
echo"$nbsp";
}
echo"*";
}
echo"<br>";
}
?>
$n = 10; //金字塔的层数
$num = $n * 2 - 1; //每层金字塔的字符数量
echo "金字塔的层数为:".$n."\n";
for ($i = 0; $i < $n; $i++) {
if ($i == 0) {// 打印第0层
for($j = 0; $j < $n-1; $j++) {
echo " ";
}
echo "*";
} else if ($i == $n - 1) {// 打印第n-1层,最后一层
for ($j = 0; $j < $num; $j++) {
echo "*";
}
} else { //其他层
//先打印左侧空格
for ($j = 0; $j < $n-1-$i; $j++) {
echo " ";
}
//打印左侧的*
echo "*";
//打印中间的空格
for ($j = 0; $j < $i * 2 - 1; $j++) {
echo " ";
}
//打印右侧的*
echo "*";
}
echo "\n";//如果显示在网页里,则输出<br/>
}
对算法以及嵌套的for循环了解的不是很透彻..