Вы захотите использовать то, что называется Регулярное выражение .
Вы должны написать регулярное выражение, а затем использовать одну из различных * PHP 1005 * регулярных выражений , чтобы делать то, что вы хотите.
В этом случае вам, вероятно, следует использовать функцию preg_replace (), которая находит строку, соответствующую вашему регулярному выражению, и заменяет ее, как вы укажете.
Требуемое регулярное выражение особенно сложно написать, поскольку URL-адреса могут иметь разные формы, но я нашел выражение, которое должно помочь:
$text = "derp derp http://www.google.com derp";
$text = preg_replace(
'@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.]*(\?\S+)?)?)?)@',
'[yourtag]$1[/yourtag]',
$text
);
echo $text;
Будет выведено:
derp derp [yourtag]http://www.google.com[/yourtag] derp
Вы можете видеть, что функция preg_replace()
нашла URL-адрес (и он найдет несколько) в $text
и поместила теги, которые я указал, вокруг него.