ugrás a tartalomhoz

(tipikus) UTF-8 kódolási hiba fájlok létrehozásakor

fabian.attila · 2014. Aug. 7. (Cs), 00.06
Sziasztok, üdvözletem mindenkinek!

Készítettem egy apró szkriptet, amivel fájlokat lehet létrehozni. A program tökéletesen üzemel, mindaddig, amíg nem próbálok meg ékezetes karaktereket tenni a fájlok nevébe.

Tudom, ez már egy tradícionális probléma mióta létezik az internet, de a XXI. században csak van rá kulturált megoldás... :-)

És igen, azzal is tisztában vagyok, hogy nem szeretünk a nevükben ilyen karaktereket tartalmazó fájlokkal dolgozni, úgyhogy jobb megszabadulni tőlük, de mégis érdekelne, hogy hogyan lehetne ezt a problémát áthidalni.

A fájl, amiben a szkript végigfut UTF-8 kódolású.

A válaszokat előre is köszönöm, további szép napot:
fabian.attila
 
1

iconv

bonga · 2014. Aug. 7. (Cs), 03.54
A kérdésedből azt feltételezem, hogy Windows alatt futtatod a szkripted. Windows alatt nem UTF-8 kódolással mennek a fájlnevek, ezért át kell alakítani őket. Magyar karakterek használatához célszerű windows-1250 kódolást használni, valahogy így:
  1. <?php  
  2.     $filename = "árvíztűrő tükörfúrógép.txt";  
  3.     $filename = iconv('utf-8''windows-1250'$filename);  
  4.     file_put_contents($filename'tartalom');  
2

Hát ez egy varázslat volt,

fabian.attila · 2014. Aug. 7. (Cs), 11.36
Hát ez egy varázslat volt, köszönöm szépen!