Viele Bilder automatisch unbenennen?

Kendo99

Grünschnabel
Hallo,

ich habe einen Ordner mit vielen Bildern die als Dateinamen alle eine fortlaufende Nummer haben.
0001.jpeg
0002.jpeg
....


Ich habe eine txt Datei, in jeder Zeile befindet sich ein Wort. Beispiel:
Hamburg
Altona
...

Nun möchte ich, dass die Bilder in diese Wörter inkl. den Nummern unbenannt werden. Beispiel:
Hamburg_0001.jpeg
Altona_0002.jpeg


Kann mir jemand freundlicherweise weiterhelfen und sagen wie ich das mache?

MFG
Kendo
 
Hi

eine möglichkeit wäre das wie folgt zu machen:
PHP:
$image_dir = "./images"; //ordner mit Bildern
$txtfile = file("cities.txt");
$images = scandir($image_dir);
$i = 0;
foreach($images as $image){
  if( $image == "." || $image == ".." )
    continue;
  $ext = explode(".",$image);
  if( $ext[count($ext)-1)] == "jpeg" ){//jpeg Datei
    if( !isset($txtfile[$i]) )  
      $i = 0;
    rename($image_dir."/".$image,$image_dir."/".$txtfile[$i].$image);
  }
  $i++;
}

Ist aber ungetestet.
 
Danke für die Mühe, aber das geht leider nicht. Fehlermeldung ist:

Parse error: syntax error, unexpected ')', expecting ']' in E:\xampp\xampp\htdocs\pics_rename\index.php on line 10

Line 10 sieht so aus:
PHP:
 if( $ext[count($ext)-1)] == "jpeg" ){//jpeg Datei
 
Und diesen Fehler solltest du spätestens bei genauem Hinsehen auch selbst beheben können!
 
Ich kann mir denken was du meinst... ) mit ] tauschen... Doch dann kommt diese Fehlermeldung:

Parse error: syntax error, unexpected T_IS_EQUAL in E:\xampp\xampp\htdocs\pics_rename\index.php on line 10

Habe schon paare Male versucht die Klammern zu tauschen... aber immer kommen Fehlermeldungen
 
Der Fehler sagt dir ja, dass eine ) unerwartet ist. Welche das ist fallt einem relativ schnell auf, nicht?
 
Nee so wird das nix. Ich hab schon alles Erdenkliche ausprobiert. Hast du es denn ausprobiert und hats bei dir geklappt bzw weisst du überhaupt dass das Script 100 % geht?

P.S. Ich vermute mal ganz stark, dass es um das ) hinter der -1 geht ?! Aber egal welches ) ich entferne oder tauche oder ersetze.... es kommen immer Fehlermeldungen
 
Zuletzt bearbeitet:
Der Fehler den du oben genannt hast rührt von
Code:
if( $ext[count($ext)-1)] == "jpeg" )

Eben der ) hinter -1. Wenn weiterhin Fehler kommen bei folgendem Code:
Code:
if( $ext[count($ext)-1] == "jpeg" )

Dann müsstest du diese entsprechend posten.
 
Zurück