iTunes URL을 파일 시스템 이름으로 디코딩하려는 PHP에서 예기치 않은 문제가 있습니다. iTunes는 UTF8 호환성을 테스트하기 위해 제작 된 파일 이름에 다음 위치를 제공합니다.Stumped : PHP의 fopen이 5.3.1/WIN에서 16 진수 문자로 실패했습니다.
파일 : // localhost/C :/사용자/사용자/데스크톱/% E6 % 9D % BF % C3 % AD % E9 % 87 % 8E % E5 % 8F % 8B % E7 % BE % 8E % B8 % C3 % B0 % D0 % B9 % C3 % BC % C3 % B6 + % CF % 88 % E6 % BC % A2 % E8 % AA % 9E % E7 % AE % 80 % D8 % B1 % D7 % 91 % D6 % B5의 %의 D6 % BC %의의 D7 %의 99 % D8 %의의 A8의 %의 D9의 %는 8A.mp3
원래 파일 이름은 알파벳과 문자의 혼합이다. 板 í 野 友 美 иðйüö + ψ 漢語 简 ر בֵּי بي MP3
I php의 문자열 형식으로 변환하고 // loaclhost/prefix : $ filename = "C :/Users/user/Desktop/\ xE6 \ x9D \ xBF \ xC3 \ xAD \ xE9 \ x87 \ x8E \ xE5 \ x8F \ x8B \ xE7 \ xBE \ x8E \ xD0 \ xB8 \ xC3 \ xB0 \ xD0 \ xB9 \ xC3 \ xBC \ xC3 \ xB6 + \ xCF \ xA \ xE8 \ xAA \ x9E \ xE7 \ xAE \ x80 \ xD8 \ xB1 \ xD7 \ x91 \ xD6 \ xB5 \ xD6 \ xBC \ xD7 \ x99 \ xD8 \ xA8 \ xD9 \ x8A.mp3 "
fopen 할 때 ($ filename, 'r'); 창문은 파일이 존재하지 않는다고 불평합니다.
Windows의 경우 PHP5.3.1 (XAMPP)입니다.
답장을 보내 주셔서 감사 드리며 다른 방법을 사용하여 iTunes URL을 정리하십시오. 불행히도, 이것은 문제가되지 않습니다. 이미 "+"를 16 진수 문자로 대체하고 urldecode 및 rawurldecode를 시도했지만 더 길어진 바이트 길이로 읽을 수있는 합법적 인 파일 이름을 얻는 방법을 찾지 못했습니다 . 나는 php가 XAMPP의이 판에서 바로 컴파일되지 않을지도 모른다는 느낌이 들었다. – Rich