Мне нужно очистить строку, которая приходит (копировать/вставлять) из различных приложений Microsoft Office (Excel, Access и Word), каждый со своим набором кодирование.
Я использую json_encode для целей отладки, чтобы иметь возможность видеть каждый отдельный кодированный символ.
Я могу очистить все, что я нашел до сих пор (\ r\n), с str_replace, но с \u00a0 мне не повезло.
$string = '[email protected]\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0;[email protected]'; //this is the output from json_encode
$clean = str_replace("\u00a0", "",$string);
возвращает:
[email protected]\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0;[email protected]
Это точно то же самое; он полностью игнорирует \u00a0.
Есть ли способ обойти это? Кроме того, я чувствую, что я изобретаю колесо, есть ли функция/класс, который полностью блокирует КАЖДОЕ возможное char КАЖДОЙ возможной кодировки?
____ EDIT ____
После первых двух ответов мне нужно уточнить, что мой пример работает, потому что это вывод из json_encode, а не фактическая строка!