Приветствую! Достался мне продукт в разработку/поддержку и сразу же всплыла проблема, как оказалось, хроническая. На сервисе происходит некий импорт из csv файла, данные записываются в бд. Кодировка БД utf8_unicode_ci. И в одном из полей бд попадается вот такой вот символ
\ufeff, из базы берутся значения и формируется строка для отправки по SOAP в 1С сервер.
На стороне 1C это читается как ? - т.е. символ непечатаемый, я погуглил, нашёл ответ:
www.fileformat.info/info/unicode/char/FEFF/index.htm
Как мне теперь этот символ из это строки выковырять?
Хватит ли регулярки, чтобы оставить только цифры и знаки препинания?
Например:
preg_replace("/[^,:;.0-9]/", '', $string);
Проблема обнаружилась, когда я стал писать отправляемые данные json'ом в log-файл, строка, по которой возникают проблемы, выглядит вот так:
\ufeff144732:2:112,20;151312:2:325,50;\ufeff144732:2:112,20;