@Denis9999

Сравнение строк в php?

Есть файл для реализации многоязычности, в котором содержаться пары ключ(слово на англиском) => перевод. Все работает нормально, но вот с одним из ключей возникла проблема - 'Brighton & Hove' .
Это показывает что они не равны, хоть $word и $key выводят одно и тоже, :
if ('Brighton & Hove' == $word) { echo $key . '-' . $word; }  //ничего не выводит
if ('Brighton & Hove' == $key) { echo $key . '-' . $word; }   // выводит

$word берется и бд, которая в кодировке utf-8, а $key из файла с такойже кодировкой. В чем тут может быть проблема?

Полный код:
function __lang($word, $lang) {
    include ('lang.php');
    $arr_words = $$lang;
    $word = trim($word);
    foreach ($arr_words as $key => $value){
        $key = trim($key);
        if ('Brighton & Hove' == $word) { echo $key . '-' . $word; }  //ничего не выводит
        if ('Brighton & Hove' == $key) { echo $key . '-' . $word; }   // выводит
        if ($key == $word) {
            return $value;        // вернет перевод, если ключ(слово на англиском) и слово, которое нужно перевести равны
        }
    }
    return '<span style="color: darkred;">Нет такого слова</span>';
}
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
@Denis9999 Автор вопроса
В файле перевода нужно было заменить & на &amp;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы