Ребята, возможно не особо удачно составил оглавление вопроса, но суть заключается в следующем:
у меня есть строки вот такого примера:
Программа «Я пробую» (включает 3 smart-тренировки в течении 2 недель) в любое время, всего за 1650 руб., вместо 3300 руб.
Программа "Стройная весна" (включает 6 smart-тренировок в течении месяца) с 7.30 до 17.00, всего за 2499 руб., вместо 6000 руб.
Программа 'Стройная весна' (включает 6 smart-тренировок в течении месяца) с 7.30 до 17.00, всего за 2499 руб., вместо 6000 руб.
Мне необходимо обезопасить себя для отправки в json.
Для этого я хочу удалить все лапки в разных вариантах из строки.
Если я:
$text1 = preg_replace('/[\«\»\'\"]/', '', $text1);
То на выходе я получаю
Программа Я пробую (вк�ючает 3 smart-тренировки в течении 2 неде�ь) в �юбое время, всего за 1650 руб., вместо 3300 руб.
Как это исправить, а также мне необходимо укоротить строку на макс. количество символов до 128
Просто используйте нативный json_encode, он сам всё экранирует:
$str = "Программа «Я пробую» (включает 3 smart-тренировки в течении 2 недель) в любое время, всего за 1650 руб., вместо 3300 руб.";
$json = json_encode($str);
var_dump($json);
Чтобы укоротить строку, используйте mb_substr:
$str = mb_substr($str, 0, 128);
$json = json_encode($str);
добавьте /u
$text1 = preg_replace('/[\«\»\'\"]/u', '', $text1);
http://php.net/manual/ru/reference.pcre.pattern.modifiers.php
u (PCRE_UTF8) Этот модификатор включает дополнительную функциональность PCRE, которая не совместима с Perl: шаблон и целевая строка обрабатываются как UTF-8 строки. Недопустимая целевая строка приводит к тому, что функции preg_* ничего не находят, а неправильный шаблон приводит к ошибке уровня E_WARNING. Пятый и шестой октеты UTF-8 последовательности рассматриваются недопустимыми с PHP 5.3.4 (согласно PCRE 7.3 2007-08-28); ранее они считались допустимыми.
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники