О добрые боги php, нужна ваша помощь, знания у меня минимальные, а задачу выполнить нужно. Честно скажу гуглил пол часа, конкретного под мои знания ответа не нашел. Имеется форма отправки письма, в input указан placeholder="Город", в обработке php, к значению подставляется "г.", но попадаются кому надо написать в input "г." и получается приходит письмо где два раза г. г. . Собственно по теме нужно допилить обработчик, берем переменную, ищем в значении текст "г." если есть удаляем, если нет пропускаем как есть. Думаю задача проще некуда, с меня благодарность и пиво
PHP: <?php $needle = 'г.'; $string = 'Казань'; $result = ( stristr($string, $needle) === false ) ? $needle . ' ' . $string : $string; echo $result; --- Добавлено --- но, PHP: $string='Гамбург.'; поэтому смотрите в сторону strpos https://www.php.net/manual/ru/function.strpos.php
PHP: $a = [ 'г. Ейск', 'Энск', 'Гамбург.' ]; $a = preg_replace('#^(г\.|)\s*#', 'г. ', $a); print_r($a);
Вариант рабочий, прикрутил. Насчет повторения я так понял нужно stristr заменить на strpos? И как добавить если к примеру пользователь не знает правил сокращения и указал только "г Казань" без точки?