怎么用while循环语句制作一个*型金字塔

怎么用while循环语句制作一个*型金字塔,不是空心的那种

<?php
$n=5; //金字塔行数
$i=1;
while($i<=$n)
{
    //在打印*之前,先打印空格
    $k=1;
    while($k<=$n-$i)
    {
        echo"&nbsp;";
        $k = $k+1;
    }
    //内层控制每层*的个数
    $j=1;
    while($j<=2*$i-1)
    {
        echo"*";
        $j = $j+1;
    }
    echo"<br/>";
}

while实现:

<?php
$i = 1;
while ( $i < 6) {
echo str_repeat('  ',5 - $i);
echo str_repeat('*',1+2*($i-1));//生成特定个数的*
echo "
";
$i++;
}
?>

for循环实现:

<?php
// $i 控制层数
for($i=1;$i<=5;$i++){
    // 空格
    for($k=1;$k<=(5-$i);$k++){
        echo '&nbsp;';
    }
    // 星星
    for($s=1;$s<=(2*$i-1);$s++){
        echo '*';
    }
    echo '<br/>';
}