You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PHP实现如下样式的数字金字塔?

PHP实现指定样式数字金字塔的正确方案

预期效果

1
   212
  32123

现有代码问题

你当前的代码分为两个独立循环,分别输出倒序数字和正序数字,无法组合出对称的金字塔结构,同时缺少居中所需的前置空格处理,因此达不到预期效果。

正确实现代码

<?php
$rows = 3; // 可修改为需要的金字塔层数
for ($i = 1; $i <= $rows; $i++) {
    // 输出前置空格,实现金字塔居中对齐
    echo str_repeat("&nbsp;", $rows - $i + 1);
    // 输出从当前层数倒序到1的数字
    for ($j = $i; $j >= 1; $j--) {
        echo $j;
    }
    // 输出从2到当前层数的数字,补全对称结构
    for ($j = 2; $j <= $i; $j++) {
        echo $j;
    }
    echo "<br>";
}
?>

代码说明

  1. $rows 控制金字塔的总层数,示例中设置为3,与需求匹配
  2. str_repeat("&nbsp;", $rows - $i + 1) 生成每行的前置空格,确保金字塔居中,层数越靠后,前置空格越少
  3. 第一个内层循环生成从当前层数递减到1的数字,构建金字塔左半部分
  4. 第二个内层循环生成从2递增到当前层数的数字,构建金字塔右半部分(避免重复输出1)
  5. 每行结束后输出<br>实现换行

内容的提问来源于stack exchange,提问作者Rizky Setiawan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 16:01:27