2015-01-12 4 views
0

사용자가 검색을 제출 한 후 가능한 문자 배열을 만들려고합니다.검색 문자열에 가능한 문자 배열을 만듭니다.

내가 같이 내 배열을 원하는 사용자 Draven (및 다른 문자 내가 부족)

Array 
(
    [0] => Dräven 
    [1] => Dräven 
    [2] => Dr&aUML;ven 
    [3] => Draven 
) 

이 일을 간단한 (짧은) 방법이 있나요 검색하면? 필자가 생각해 낸 것은 500 줄 길이의 함수이며 필요한 문자의 절반에 불과합니다.

+3

utf8에이 모든 것을 보관하면이 –

+0

에 대한 필요는 없어야하지만 달성하려는 것은 무엇입니까? 어쩌면 그 기능이 필요하지 않을 수도 있습니다. 이 코드를 사용할 곳에서 코드 조각을 보여줄 수 있습니까? – Alex

답변

0

아마도이 다른 방식으로 접근 할 수 있습니다. 사용자 입력을 가능한 모든 변형으로 변환하고 비교하는 대신 검색 공간에서 발음 구별 기호를 제거하고 비교하십시오.

// Normalise data (remove accent marks) 
// This requires the intl extension 
// On debian: apt-get install php5-intl 
$data = normalizer_normalize($data); 

이렇게하면 당신은 두 개의 데이터를 많이 유지해야 할 수도 있습니다 - 원래의 변환되지 않은 데이터로 하나 당신이 당신의 검색 공간으로 사용하는 것이 다시 정상화를.

관련 문제