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:

<?php
    $filename = "árvíztűrő tükörfúrógép.txt";
    $filename = iconv('utf-8', 'windows-1250', $filename);
    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!