Удалите непечатные символы, но оставьте акценты (проблема PHP 5.5 до 5.6)

Я хочу удалить непечатаемые символы и сохранить французские акценты, такие как "é". Я могу сделать это в PHP 5.5, но не в PHP 5.6.

На PHP 5.5:

$original = preg_replace('/[\x00-\x1F\x80-\x9F]/u', '', $original);

Это работает отлично. Но после моего обновления до PHP 5.6 возвращается пустое значение!

На PHP 5.6 я использую это частичное исправление:

$original = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $original);

Непечатные символы удаляются, но удаляются и акценты. Как я могу сохранить их?

Когда переменная сохраняется в SQL, я хотел бы иметь "mangé", но она возвращает "mang" в PHP 5.6, поэтому.

Спасибо за помощь!

0 ответов

Другие вопросы по тегам