一道與 for 相關的字串面試題

pardon110發表於2020-03-05

需求

輸出

分析

1.php字串格式化輸出補全
2.每組首列自然序列,後續行元素等差20(每組的行數)疊加
3.分組,分行,分列 三個for迴圈疊加

程式碼

// 計算組每行(組,行,列)
$str = "";
for ($i = 1; $i <= 2; $i++) {
    // 首列元素
    $start = $i;
    // 計算每列
    for ($j = 0; $j < 3; $j++) {
        $str .= sprintf("%s%s", $prefix, str_pad($j > 0 ?  ($start += 20) : $i, 5, "0", STR_PAD_LEFT));
        if ($j != 3) {
            $str .= str_pad(" ", strlen($prefix) + 5);
        }
    }
    $str .= "\n";
}
echo $str;
}
echo $str;

效果

D:\code-base\php\test>php "d:\code-base\php\test\for.php"
YX-HL-00001           YX-HL-00021           YX-HL-00041
YX-HL-00002           YX-HL-00022           YX-HL-00042
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章