• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

$i++ immer dreistellig. sprintf funktioniert nicht

aJunkie

Mitglied
Hallo,

kann mir jemand helfen, dass der Zähler, der bis in den dreistelligen Bereich geht, auch im ein- und zweistelligen Bereich dreistellig mit voranstehenden Nullen ist?

Ich habe sprintf() gefunden, welches nicht funktioniert hat.

Ich möchte Verzeichnisse erstellen, die so aussehen sollen:
001
010
100

PHP:
$i    = 0;
while($i < 155) {
    $i++;
    //sprintf('%03d', $i);

if(!is_dir($i)) mkdir($i);
if(!is_dir("$i/a")) mkdir("$i/a");
if(!is_dir("$i/b")) mkdir("$i/b");
if(!is_dir("$i/c")) mkdir("$i/c");
    
}
Ich glaube, dass das auch im Zusammenhang von "155" nicht ganz funktioniert.
sprintf habe ich auch vor der while Schleife probiert.
Das würde ja dann so aussehen:

PHP:
while(005 < 155) { }

Edit:
Habe es mal vorläufig so gemacht:
PHP:
    if($i < 10) $i = "00".$i;
    if($i >= 10 && $i < 100) $i = "0".$i;
 
Zuletzt bearbeitet:
Werbung:
So wie du sprintf benutzt hast, war es auch falsch:
PHP:
for ($i = 0; $i < 155; $i++) {
    $folder_name = sprintf('%03d', $i);

    if(!is_dir($folder_name)) mkdir($folder_name);
    if(!is_dir("$folder_name/a")) mkdir("$folder_name/a");
    if(!is_dir("$folder_name/b")) mkdir("$folder_name/b");
    if(!is_dir("$folder_name/c")) mkdir("$folder_name/c");
    
}
ansonsten gibt es noch number_format().
 
Werbung:
Zurück
Oben