2012-09-08 2 views
2

내가 데이터를 읽을 때, 데이터 (문자열의 덩어리)처럼 HTML 특수 문자 진수 HEX 코드가 포함되어 가정 해 봅시다 : HEX 코드가 대응 기호의 소스 코드는 위의 우리는 말할 수
This is a sample string with œ and šPHP가 특수 문자를 감지하고 변환합니까? PHP에서

브라우저에서 올바른 기호로 렌더링됩니다.
This is a sample string with œ and š

그래서 내가 어떻게의 어떤을 감지 수 있습니다

는하지만 내가하고 싶은 것은, 내가 좋아하는 변환 된 원래의 문자 기호 이러한 HEX (들) 원하는 (예를 들어) 이러한 문자를 들면, 문자열 내의 10 진수 HEX 코드를 16 진수 코드 대신 마지막 심볼으로 변환 하시겠습니까?

참고 : 더 clearence에 대한
, 에 어떤 기능이 기호의 진수를 감지하고 변환이?
처럼 :
œ =>œ
š =>š

답변

2
$s = "This is a sample string with œ and š"; 
echo html_entity_decode($s, ENT_COMPAT, 'UTF-8'); 
+0

이 작동하지 않습니다! 브라우저 출력 :

This is a sample string with œ and š
JvdBerg

+0

@JvdBerg 아마 출력이 UTF-8로 인코딩되지 않았기 때문일 수 있습니다. – Gumbo

+0

브라우저가 디코드를하기 때문에 작동하는 것 같습니다! – JvdBerg

-1

은 사용 있는지 아무것도 확인 (데이터베이스 테이블, 데이터 교환을위한 JSON 또는 XML을, HTML 파일 등 등 등) UTF-8 형식으로되어

1

HTML 엔티티입니다. html_entity_decode()으로 실제 기호로 돌아갈 수 있습니다.

+0

이것은 작동하지 않습니다 !! 브라우저 출력 :

This is a sample string with œ and š
JvdBerg

+2

아니요, 실제로는 [문자 참조]입니다 (http://stackoverflow.com/questions/5136750/php-unicode-character-questions/5136787#5136787). 엔티티 참조는 ''을 나타내는 엔티티 * amp *를 참조하는 '&'이됩니다. – Gumbo

+0

브라우저가 디코드를하기 때문에 작동하는 것 같습니다! – JvdBerg

관련 문제