file_exists ("file_å.txt");PHP의 file_exists와 Ø Æ과 같은 특수 문자
반환 거짓를 파일이있다. 이런 종류의 파일을보기 위해 * file_exists *를 만들 수 있습니까?
감사합니다. 당신의 PHP 스크립트를 인코딩
file_exists ("file_å.txt");PHP의 file_exists와 Ø Æ과 같은 특수 문자
반환 거짓를 파일이있다. 이런 종류의 파일을보기 위해 * file_exists *를 만들 수 있습니까?
감사합니다. 당신의 PHP 스크립트를 인코딩
점검에 있습니다. 아마 그것은 파일 시스템에서 다릅니다. (예 : 라틴 대 UTF-8)
네, 파일은 UTF-8입니다. 내 호이스트의 파일 시스템이 어떤 인코딩인지 확인하는 방법을 모릅니다. 계속 업데이트 될 것입니다. 그리고 팁에 감사드립니다. –
php 파일이 UTF8로되어 있습니까? (file_a.txt 파일이 아님) – periklis
iconv ('UTF-8', 'ISO-8859-1', 'file_å.txt')는 브라우저에서 적절한 파일 이름을 제공하지만 여전히 * file_eixsts *가 존재하는지 확인할 수 없습니다 . –
텍스트를 가정 file_exists(mb_convert_encoding("file_å.txt", "UTF-8"));
이 UTF-8
감사합니다. 작동하지 않았습니다. –
나를 위해 일했다 : D – DaMouse404
확인이 답변하지 않습니다 시도 : https://stackoverflow.com/a/2685818/190791
나를 위해이 솔루션은했다 윈도우 파일 형식으로 변환 :
$winfilename= iconv('utf-8', 'cp1252', $utffilename);
이것은 - 기호가있는 파일 이름에서 나를 위해 일했다. 감사! –
예를 들어 Excel에서 파일 이름을 읽고 디스크의 지정된 경로를 찾을 때 몇 번 실행했습니다. 문제는 "ä"가 특정 유니 코드 문자 (\ u00e4) 또는 "결합 된 디아 레 시스"형식 (\ u0308) 즉 두 점이있는 "a"일 수 있습니다.
가장 좋은 방법은 PHP 5.3부터 노멀 라이브러리를 사용하는 것입니다. 클래스를 PHP로 가져 오려면 sudo apt-get install php5-intl
가 필요할 수 있습니다. 그 단지
$normalizer = new \Normalizer();
$normalizer->normalize($val, \Normalizer::FORM_D)
는 두 번째 인수에 대한 몇 가지 다른 형태의 Theres는 후에 당신은 당신이 [ "file_exists"문제에서 (PHP)를 특수 문자 (의
가능한 중복이 필요한 일 조회해야하므로 http://stackoverflow.com/questions/2685718/special-characters-in-file-exists-problem-php) – Treffynnon
또한 https://bugs.php.net/bug.php?id=46990 – Treffynnon
이 중복되지 않음을 참조하십시오. 그 주제는 윈도우 기반 박스와 관련이있다. 그러나 링크에 감사드립니다! –