такое возможно не только с match
Misha v.3 18.02.2016 15:32
если вы работаете в utf8 и каким-то образом загрузили символы, которые по сути не являются utf8, то попытки например преобразовать регистр таких символов обломаются.
внутри парсер не всегда занимается проверками того, что ему подсунули как строку. байты и байты. а при попытке подсчитать длину utf8 строки, преобразовать регистр и ещё некоторых операциях -- он работает с данными посимвольно и если хоть один из символов не валиден -- exception. match -- отдельный случай. парсер передаёт всё, что у него есть pcre-либе. и дальше всеми проверками занимается она.
P.S. на первый ваш вопрос ответить не могу.