我有以下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;
PHP的sprintf
是你的朋友。
所以这一行$arr[] = "A-MTP-$i-" . $val;
会变成$arr[] = sprintf("A-MTP-%02d-%02d", $i, $val);
我认为你应该这样使用sprintf:
$arr[] = sprintf("A-MTP-%02d-%02d", $i, $val);