当前位置: 首页> 最新文章列表> PHP 菱形输出教程:如何在 PHP 中生成菱形图案

PHP 菱形输出教程:如何在 PHP 中生成菱形图案

M66 2025-09-25

PHP 如何输出菱形图案

在 PHP 中输出菱形图案的实现方法主要依赖于循环结构和字符串拼接。通过计算菱形的中间行数,结合循环控制,可以逐步输出菱形的上半部分、中心行和下半部分。

步骤一:确定菱形的中间行数

菱形的大小由中间行数决定。假设菱形的中间行数为 $rows。

步骤二:输出上半部分菱形

上半部分菱形是从中心行开始向上逐行输出的。我们可以使用 PHP 中的 str_repeat() 函数生成每行前的空格和星号。循环控制会从 $rows - 1 开始,逐渐减少。


for ($i = $rows - 1; $i >= 1; $i--) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

步骤三:输出中间行

菱形的中间行包含 $rows * 2 - 1 个星号。


$midLine = str_repeat('*', $rows * 2 - 1);
    echo $midLine . "\n";

步骤四:输出下半部分菱形

下半部分菱形的输出方法与上半部分类似,不过这一次从第 2 行开始向下逐行输出。循环控制会从 2 开始,逐渐增加。


for ($i = 2; $i <= $rows; $i++) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

完整代码示例


$rows = 5;  // 设定菱形的中间行数为 5

// 输出上半部分菱形
for ($i = $rows - 1; $i >= 1; $i--) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

// 输出中间行
$midLine = str_repeat('*', $rows * 2 - 1);
echo $midLine . "\n";

// 输出下半部分菱形
for ($i = 2; $i <= $rows; $i++) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

以上代码示例演示了如何使用 PHP 代码生成一个菱形图案。您可以根据需要调整 $rows 的值来改变菱形的大小。通过控制循环次数和字符串拼接,您可以在 PHP 中灵活地输出各种图案。