ugrás a tartalomhoz

file_exists() és az ékezetes karakterek

zolinho · 2008. Ápr. 4. (P), 11.44
HelloBello!

Miért nem észleli a file_exists() függvény az ékezetes karaktert tartalmazó fájlokat?

A válaszokat előre is köszönöm!
 
1

Eltérő kódolás

zila · 2008. Ápr. 4. (P), 12.24
Mert pl. eltérő kódolást használsz a php fileban mint amilyen kódolással a filerendszer kódolja a file-t. Többek között ezért kerüljük az ékezetes file nevek használatát.
2

Mi a megoldás?

zolinho · 2008. Ápr. 4. (P), 13.11
Nem túl bíztató... A problémám az, hogy folyamatosan fogok kapni képeket, amelyek nevében lehet, hogy szerepelni fog ékezetes karakter. Ezekre a képekre kellene alkalmaznom a file_exists függvényt. Mit tegyek? A függvény lefuttatása előtt nevezzem át a problémás képeket? Rengeteg kép esetén ez a megoldás nagyon időigényes. Van egyéb megoldás?
3

Kódolás egyeztetése

zila · 2008. Ápr. 4. (P), 14.35
Hát használj ugyanolyan kódolást a programodban (legalább a filenévre) mint a file rendszer... Én biztosan írnék (nem is inkább beszereznék) egy kis scriptet amivel tömeges file átnevezést tudok csinálni (total commander pl tud, de az nem scriptelhető, linuxra vannak erre shell scriptek. google: bulk rename)
4

transliterate

Poetro · 2008. Ápr. 4. (P), 14.38
Minden mentés előtt érdemes futtatni a lementendő filenéven egy transliteration-t. Keress rá gugliban, van pár PHPs megoldás. A transliteration lényege, hogy minden karaktert ASCII 96-ra alakít (azaz minden ékezetes és speciális karakter a neki "megfelelő" latin karakterré alakul).