PHP преобразование URL в активные ссылки

Author Автор: Роман Чернышов    Опубликовано: 18 июля 2012

Очень полезным скриптом может оказаться функция автоматического преобразования URL в активную ссылку, в HTML тег типа <a href=»url»… Собственно далее именно об этом и пойдет речь. Где может пригодиться данная возможность? Вариантов применения множество, всё те-же форумы, блоги, комменатарии.  Например пользователь пишет сообщение с указанием адреса сайта www.yandex.ru, а ваш скрипт автоматически преобразует данный адрес в ссылку, что повышает удобство использование вашего сайта(скрипта).

Пример PHP функции:

<?php
function tolink($buf) {
	$x=explode(" ",$buf);
	$newbuf='';
	for ($j=0; $j<count($x); $j++) {
	 if (preg_match
	    ("/(http:\\/\\/)?([a-z_0-9-.]+\\.[a-z]{2,3}(([ \"'>\r\n\t])|(\\/([^ \"'>\r\n\t]*)?)))/",
	    $x[$j],$ok))
	    $newbuf.=str_replace($ok[2],"<a href='http://$ok[2]'>$ok[2]</a>",
	                           str_replace("http://","",$x[$j]))." ";
	 else
	 $newbuf.=$x[$j]." ";
	}
	return $newbuf;
}

Вызов функции осуществляется следующим образом:

<?php
echo tolink("ваш текст содержащий ссылку на ресурс, например на www.yandex.ru");

Функция tolink() принимает в качестве аргумента ваш текст и возвращает текст с уже замененными URL на активные ссылки.

Category HTML, PHP     Tags , ,

1 Comment to “PHP преобразование URL в активные ссылки”

  • Конструктор 25.09.2016 в 2:17 дп

    Стоит поправить длину доменной зоны, т.к. появились newGTLD длиннее трех букв.
    Например, .moscow

Оставить комментарий

Автор блога
Чернышов Роман
Роман Чернышов
Веб-разработчик, Full Stack
Senior, Architector
PHP, JavaScript, Node.JS, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка