Zitat:
Zitat von mo78
Guten Morgen,
ich habe das Problem das ich nach einem Datei(.mp3) upload die Sonderzeichen aus dem Dateinamen entfernen möchte bzw durch einen - ersetzt werden sollen.
|
Definiere "Sonderzeichen".
Es gibt noch mehr Zeichen als die von dir aufgezählten, die in Dateinamen Probleme machen können.
Zitat:
Meine idee ist :
PHP-Code:
$replace = array ('!','§',' $','%',' &',' ?','@');
$name = str_replace($replace, "-",($_FILES['datei']['name'])) ;
|
Ich werde aus deiner Liste ('!','§',' $','%',' &',' ?','@') nicht schlau. Sind die Leerzeichen vor '$', '&' und '?' Absicht oder Tippfehler?
Fragezeichen sollten im Namen einer hochgeladenen Datei gar nicht erst vorkommen.
Zitat:
|
Leider Passiert so mit dem String leider garnichts??
|
Das kann ich dir nicht beantworten. Aber du kannst nachsehen, was in $_FILES['datei']['name'] steht, und was dein str_replace() daraus gemacht hat:
PHP-Code:
// vorher:
var_dump($_FILES['datei']['name']);
// nachher:
var_dump($name);
Zitat:
|
Aber bin mir auch nicht sicher ob ich so auf dem richtigen Weg bin.
|
Eventuell ist
strtr() der geeignetere Kandidat für diesen Fall?
PHP-Code:
$name = strtr($_FILES['datei']['name'], '!§$%&?@ ', '-');