Codeigniter를 사용하여 다국어 웹 사이트를 만들고 모든 것이 잘 작동하지만 Luis가 "대체 언어 도우미"를 사용하려고하면 문제가 발생합니다. 이 헬퍼는 새와 현재의 언어를 대체하는 정규 표현식을 사용 http://www.example.com/en/language/english/
내가 변경하지 않고 첫 번째 " 엉"를 교체하려면 :Codeigniter 및 preg_replace
$new_uri = preg_replace('/^'.$actual_lang.'/', $lang, $uri);
문제는이 같은 URL을 가지고있다 단어 "영어". 나는 preg_replace
에 대한 제한 사용하려고 :
$new_uri = preg_replace('/^'.$actual_lang.'/', $lang, $uri, 1);
을하지만 나를 위해 작동하지 않습니다. 어떤 아이디어?
질문에 주어진 URL은 여전히 그 정규식과 일치합니다. –
여전히 일치하지만 첫 번째 'en'부분 만 일치합니다. 후행하는'english /'는 일치하지 않을 것이고 따라서 대체되지 않을 것이다 ... – ircmaxell
사실, 나는 너무 빨리 말했다. URL이 en으로 시작하지 않기 때문에 URL이 전혀 일치하지 않습니다. 그러나 '^'앵커가 없으면'http : // www.example.com/en/language/en /'이 두 번 일치합니다. –