Php 在数组中填充数字

Php 在数组中填充数字,php,arrays,Php,Arrays,我有下面的PHP代码,它创建了A-MTP-1-1、A-MTP-1-2等数组 <?php for ($i = 1; $i <= 3; $i++) { # Pass 3 as you need three sets foreach (range(1, 12) as $val) { # 1,12 again as per your requirements $arr[] = "A-MTP-$i-" . $val; } } fore

我有下面的PHP代码,它创建了A-MTP-1-1、A-MTP-1-2等数组

<?php
for ($i = 1; $i <= 3; $i++) {           # Pass 3 as you need three sets
    foreach (range(1, 12) as $val) {    # 1,12 again as per your requirements
        $arr[] = "A-MTP-$i-" . $val;

    }
}
foreach (array_chunk($arr, 4) as $k => $arr1) {    # Loop the array chunks and set a key
    $finarray["ch" . ($k + 1)] = $arr1;
}
extract($finarray);   # Use the extract on that array so you can access each array separately
print_r($ch9);        # For printing the $ch9 as you requested.
?>

我需要数组在一位数前加0,这样它就会变成a-MTP-01-01,a-MTP-01-02,等等。。。但当它达到两位数时,不会有一个零

我如何才能实现我所需要的,因为我已经尝试了以下方法,但没有任何改变:

for ($i = 01; $i <= 12; $i++) {           # Pass 3 as you need three sets
    foreach (range(01, 12) as $val) {    # 1,12 again as per your requirements
        $arr[] = "A-MTP-$i-" . $val;
for($i=01;$iPHP是你的朋友

所以这一行
$arr[]=“A-MTP-$i-”$val;

将更改为此
$arr[]=sprintf(“A-MTP-%02d-%02d”,$i,$val);
PHP是你的朋友

所以这一行
$arr[]=“A-MTP-$i-”$val;

将更改为此
$arr[]=sprintf(“A-MTP-%02d-%02d”,$i,$val);

我认为您应该使用以下方法:

$arr[] = sprintf("A-MTP-%02d-%02d", $i, $val);
我认为你应该使用以下方法:

$arr[] = sprintf("A-MTP-%02d-%02d", $i, $val);

该死,你赢了我一拳!虽然代码很好看…和我的一模一样:)该死,你赢了我一拳!虽然代码很好看。。。与我的完全相同:)可能的重复