str_pad関数は対象の文字列を固定長の文字列にする際、固定長に足りない部分を指定文字列で埋めます。返り値は固定長の文字列です。
第一引数に対象文字列、第二引数に文字列の長さの数値、第三引数に埋める文字列、第四引数に対象文字列のどこを埋めるかのタイプを指定します。
str_pad('対象文字列','文字列の長さの数値','埋める文字列','対象文字列のどこを埋めるかのタイプ');
第四引数の対象文字列のどこを埋めるかのタイプは以下になります。
文字列の右側を埋める(デフォルト):STR_PAD_RIGHT
文字列の左側を埋める:STR_PAD_LEFT
文字列の両側を埋める:STR_PAD_BOTH
foreach文で一次元配列のkeyとvalueを表示する際に、keyをstr_pad関数で2桁の数字(実際には文字列)にします。2桁に足りない部分はstr_pad関数で0埋めします。
<?php
$items = array('トマト','キャベツ','ピーマン','レタス');
foreach ($items as $key => $value){
$count = str_pad($key + 1, 2, '0', STR_PAD_LEFT); //2桁0埋め
echo 'key:#' .$count. '、value:' .$value. '<br>';
}
?>
実行結果は以下になります。一次元配列の0から始まる添字(key)が、str_pad関数で0埋めされた01から始まる2桁の数字(実際には文字列)になっているのがわかります。
key:#01、value:トマト
key:#02、value:キャベツ
key:#03、value:ピーマン
key:#04、value:レタス
