Я использую preg_replace для функциональности типа модных слов, использую список модных слов, ищу их в статье, а затем использую preg_replace, чтобы обернуть вокруг них ссылку.
Мои модные словечки:
Online Marketing
Social Media Markeing
Social Media
Social
Brand Marketing
Brand
Search Engine Optimisation
SEO
Email Marketing
Email
Twitter
Facebook
LinkedIn
и я делаю preg_replace вот так...
$text = preg_replace("/Online Marketing/", "<a href='".$base."online-marketing/'>Online Marketing</a>", $text);
но проблема в том, что мне приходится делать preg_replace для каждого возможного варианта, например...
$text = preg_replace("/Online Marketing/", "<a href='".$base."online-marketing/'>Online Marketing</a>", $text);
$text = preg_replace("/Online marketing/", "<a href='".$base."online-marketing/'>Online marketing</a>", $text);
$text = preg_replace("/online marketing/", "<a href='".$base."online-marketing/'>online marketing</a>", $text);
Это очень многословно, теперь я знаю, что могу использовать массив с str_repalce следующим образом:
$from = array("Online Marketing", "Online marketing", "online marketing");
$name = str_replace($from, "", $text);
Но я не вижу способа найти, какая часть массива совпала, а затем заменить ее правильной ссылкой, поскольку вы можете видеть, что str_replace выше просто полностью удаляет мое модное слово, это просто пример.
Поэтому мне было интересно, сможет ли кто-нибудь помочь мне найти способ использования массива модных словечек в str_replace или preg_replace, а также убедиться, что он заменяет модное слово правильной ссылкой.
Надеюсь, кто-то может помочь