Undefiend, я сам себя пригласил. А вот вас действительно никто не приглашал писать первое пришедшее в голову слово. Впредь рекомендую думать перед тем как писать
edward_freedom, это если она вообще отправится. а я не вижу в этой "форме" не одного контрола, который бы это делал
если что, то клиент вводит в данные в картинку
Это опять бред
Можно посмотреть на конечный результат всех этих замен, и что он находит?
И каким местом в этих всех шаманских плясках с бубном участвует "При отправке POST-запросом --> \ экранируются на \\"?
Получается что сначала "РНР заменяет", потом вручную еще раз слеши удваиваются, и в итоге вместо одного везде болтается 4 слеша, \\\\w?
Что это за бредовая регулярка?
Она, разумеется, не компилится, а падает с ошибкой.
Кто этот бред писал, и - главное - что имел в виду?
Если если её писал какой-то ламер, который не знает что знак минус - это спецсивол, и должен экранироваться в символьном классе (в любой версии, а не почему-то только "в 7.3"), то то надо настучать по голове этому ламеру, и отправить учить синтаксис регулярных выражений. А не автоматом что-то экранировать. Потому что в следующей регулярке минус будет использоваться по назначению, его заэкранирует и ничего не будет работать.
В общем, это действительно говнокод, потому что минус УЖЕ должен приходить с клиента экранированным. А в пхп уже ничего экранировать не надо. Только ловить ошибки.