2014-11-07 1 views
0

내가 페이지의 인코딩 때문에 웹 페이지Simple HTML DOM에서 검색 한 웹 페이지의 인코딩을 변경하는 방법은 무엇입니까?

$html = file_get_html('http://www.example.com/somepage.aspx'); 

의 내용을 읽을하려고하는 것은 윈도우 1254이고, I는 UTF-8로 인코딩 된 페이지 작업, 나는 특정 언어가 일부 단어를 대체 할 수 없습니다 문자. 예를 들어

:

나는 그것을 대체하지 않습니다

$str2 = str_replace('TÜRKÇE', 'TURKCE', $str); 

하려고합니다.

나는 htmlentities() 기능을 시도했지만 작동했지만 특수 문자가 포함 된 일부 단어는 삭제되었습니다.

+0

'str_replace ('T Ü RK & Ccedil; E', 'TURKCE', $ str); ' –

+0

@RyanNaddy 네 나는 이것을 시도했다. 반환하지 않음 – zkanoca

+0

[iconv] (http://php.net/manual/en/ref.iconv.php)에 대한 취향처럼 들립니다. – pguardiario

답변

0

문자열을받은 후 iconv('Windows-1254', 'utf-8', $str) 함수 (덕분에 @pguardiario)를 사용했습니다. 이것은 내 문제를 해결했다.

0

utf-8에서만 작동합니다. 다른 인코딩에 데이터가 있으면 변환하십시오. 인코딩을 모르는 경우 정의를 시도하십시오. 그렇지 않으면 사용자를 사용하십시오. 그런 다음 모든 문자열 연산에만 mb_ * 함수를 사용하십시오. 중요합니다! 일부 함수는 네이티브 PHP에는 존재하지 않지만, php.net/에서 주석을 통해 손으로 만든다.

관련 문제