Dosieroj en retserviloj ĉiam estu sen spacoj (ne "ĉi tio estas bildo.jpg"), sen umlaŭtoj aŭ specialaj signoj (ne "futbalo.jpg"), sen malantaŭaj oblikvoj (ne "Arbeit \ Auto.jpg") kaj minuskle (ne ") test.JPG "). Lastatempe mi tamen devis aliri kaj prilabori grandan nombron da antaŭdifinitaj dosieroj kun iu ajn dosiernomo por klienta projekto.
Linukso-sistemoj permesas aliron al dosieroj kun umlaŭtoj kaj specialaj signoj defaŭlte, tiel ke neniuj specialaj trajtoj devas esti konsiderataj ĉi tie. Ĝi aspektas tute malsama ĉe Vindozaj sistemoj: Ĉi tie vi devas uzi iujn lertaĵojn kaj enmeti la interfacon COM. Unue vi inkluzivas la bezonatan etendaĵon en php.ini
[COM_DOT_NET] extension = php_com_dotnet.dll
unu. Nun estas uzata la tre helpema helpa klaso WinfsUtf8 , kiu tre simpligas aliron al la COM-objektoj kaj mapas preskaŭ ĉiujn PHP-funkciojn, kiuj efikas sur dosieroj. Post integrado de la dosiero kun
require_once('WinfsUtf8.php');
oni havas ĉiujn eblecojn pri la aliro al dosiero, ekzemple rezultoj
file_exists('ä.jpg');
malĝuste malvera, dum
Patchwork\PHP\Override\WinfsUtf8::file_exists('ä.jpg');
redonas veron.