- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть некий кусок кода, который в определенном разделе делает нечто вроде перелинковки.
Находит слова по маске и делает их ссылками.
Проблема в том - что находит первое совпадение и делает 1 ссылку и все.
Как изменить код - чтобы все найденные совпадения становились ссылками:
буковку "g" добавить нужно.
Замена isu на isgu вырезала вообще весь текст - в данном вопросе (это вопросы пользователей) пропадало все, весь текст.
Замена isu на isgu вырезала вообще весь текст - в данном вопросе (это вопросы пользвателей) пропадало все, весь текст.
при копировании с форума на форум ничего не пропало?
ручками попробуйте эту буковку добавить
Я изначально руками букву и прописал, щас перепроверил - да, весь текст вырезается
потомушо нет в перле флага g
возникает ошибка поэтому текста нет
preg_replace по умолчанию работает в безлимитном режиме и должно заменять всё найденное
проблема, видимо, в конкретном тексте который не попадает под условие которое у вас стоит после искомого слова
приведите текст в котором не работает полностью замена
Ссылкой становится только Гeптрал, хотя должны еще - ливoдекса, aспирин, фoсфoглив
и зачем там метасимвол "?" посередине?
что бы отрезать окончание?
чет не пойму ))
---------- Добавлено 01.12.2016 в 19:34 ----------
Ссылкой становится только Гептрал, хотя должны еще - ливодекса, аспирин, фосфоглив
ну, а в $temp->word что?
видимо, там Гeптрал вот только он и заменяется..
Я не кодер, вот нашел выше в коде
{
$words = preg_split('#[0-9\W_]+#u', $name, -1, PREG_SPLIT_NO_EMPTY);
if(!empty($words))
{
$sql = array();
$sql2 = array();
foreach($words as $word)
{
$sql[] = "t1.name LIKE ".$this->_db->quote('%'.$word.'%');
$sql2[] = "t1.name NOT LIKE ".$this->_db->quote('%'.$word.'%');
}
---------- Добавлено 01.12.2016 в 19:38 ----------
Вопрос наверное чтобы не учитывать окончания - ведь люди по разному писать могут
---------- Добавлено 01.12.2016 в 19:39 ----------
Если я изменю вопрос юзера и поставлю первым ливодексу - то она станет ссылкой
выведите
echo $temp->word;exit;
и покажите что в этой переменной
видимо, там слова через пробел что ли
тогда будет только последнее искаться
Нет - есть раздел сайта с лекарствами, есть поле в базе с названием препарата. Вот если это название попадается в тексте - оно должно стать ссылкой на препарат. Сейчас все работает как надо - не устраивает только то - что ссылкой становится первый найденный препарат, остальные так и остаются текстом.
Нигде нет какого-то набора слов.