Глупый вопрос

vitas1111
На сайте с 27.11.2009
Offline
96
401

День добрый, форумчане.

Наверное, я разучился пользоваться ПСами, не могу найти решение своей задачи.

А она очень простая:

Есть список сайтов вида

http://сайт.ру

На выходе надо получить список урлов

вида

<a href="http://сайт.ру/">сайт.ру</a><br> (анкор можно и с http, но лучше просто адрес сайт. И бр на конце нужен)

Знаю, что под разные движки есть всякие модули, которые автоматически ссылки делают активными, но мне надо не в рамках движка все это реализовать.

Заранее спасибо:popcorn:

Надежные VPS/VDS (http://cp.inferno.name/aff.php?aff=489) - лучшие цены, самый оперативный саппорт 24/7
Joker-jar
На сайте с 26.08.2010
Offline
167
#1

Это нужно единыжды реализовать (сконвертировать текстовый файл, например)? Или нужен скрипт для этого?

Joker-jar добавил 29.08.2011 в 09:58

Ну самый простой вариант:

<?php 


set_time_limit(0);
$list = file("baza.txt"); //База URL
$res_list = "";

foreach ($list as $str)
{
$str = trim($str);
$res_list .= preg_replace('/^http:\/\/(.*)$/', '<a href="\\0">\\1</a><br />', $str);
}

echo $res_list;

?>
vitas1111
На сайте с 27.11.2009
Offline
96
#2
Joker-jar:

Ну самый простой вариант:

Спасибо, вариант работает отлично, только вопрос еще. Как можно сделать, чтобы он еще после слеша в анкоре обрубал текст.

Т.е. сейчас сайт.ру/профиль..., а хотелось бы просто сайт.ру?

Joker-jar
На сайте с 26.08.2010
Offline
167
#3

Попробуйте подправить:

$res_list .= preg_replace('/^http:\/\/([0-9a-z\.\-_]+)(.*)$/i', '<a href="\\0">\\1</a><br />', $str);

Joker-jar добавил 29.08.2011 в 10:34

***91; и ***93; это открывающая и закрывающая квадратные скобки соответственно. Надо бы им подправить свой парсер :)

vitas1111
На сайте с 27.11.2009
Offline
96
#4

Joker-jar

Замечательно работает, большое спасибо за помощь:)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий