str_replace не работает
14 Янв 2012 Добавить комментарий
in Программирование, PHP Метки: не работает, пробел, str_replace
В один прекрасный день при объединении и импорте прайсов товара CSV в БД “отказала” функция str_replace.
В Notepad++ стоит $str = str_replace(" ","",$str); на сервере код не удаляет “пробел”.
На локалхосте при тесте тот же код обычный пробел удаляет.
Оказалось что в Notepad++ “пробелы” с разной кодировкой выглядят одинаково. При импорте из OpenOffice Writer не известно что и как будет кодироваться в CSV. И вот случилось, что на вроде бы одинаковые пробелы имеют разный код символа.
На локалхосте проверил через PHP
echo "
Обычный пробел: ".ord(" ");
echo "
Кривой пробел: ".ord(" ");
Вывод:
Обычный пробел: 32
Кривой пробел: 160