2011-12-05 2 views
1

보스니아에서는 다음 문자를 보스니아와 크로아티아의 라틴 양식에서만 사용하므로이 문자를 다음과 같이 변환해야합니다.PHP : 특정 보스니아 어 문자를 비 보스니아 문자 (utf8 표준 문자)로 변환

FROM | TO 
    ć | c 
    č | c 
    ž | z 
    š | s 
    đ | dj 

RegEx 또는 utf8_encode/decode의 특수 형식으로 가능하다면 해당 정보와 적절한 예를 환영합니다! 모두에게 감사드립니다.

PS - PHP로 작성하고 싶습니다!

+2

체크 아웃, 당신은 정규식 또는 문자열 교체해야합니다. 다른 모든 것은 이미 [많은 iconv] (http://stackoverflow.com/questions/158241/php-replace-umlauts-with-closest-7-bit-ascii-equivalent-in-an-utf-8- 문자열) 답변. – mario

답변

1

iconv와 함께 사용할 수 있습니다. 귀하의 의견 $text 가정 작동합니다

$result = iconv("UTF-8", "ASCII//TRANSLIT", $text); 

은 UTF-8입니다. 이 라틴어-1의 경우 iconv 확장자를해야합니다 PHP의 원인의

iconv("ISO-8859-1", "ASCII//TRANSLIT", $text); 

를 사용하여 가장 자주 iconv는 항상은 아니지만, php.ini 파일에 사용할 수 있습니다.

+1

이것은 비 ASCII 문자를 ASCII에서 가장 유사한 대체 문자로 변환합니다. 이 기능을 사용하려면이 함수를 호출하기 전에 로캘을 설정해야합니다. setlocale (LC_ALL, 'en_US'); –

2

당신이 시도 할 수 있습니다 :

또한
$search = array("ć", "č", "ž", "š", "đ"); 
$replacement = array("c", "c", "z", "s", "dj"); 
$new_string = str_replace($search, $replacement, $string); 

, dj` 전환`에`đ`를 들어 str_replace

+0

개 감사합니다. –

관련 문제