[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Загрузка страницы из файла с рабочими ссылками
Гость_Roman
Добрый день! PHP вообще не знаю, поэтому прошу Вашей помощи.
Задача следующая:
1.Есть сайт на wordpress.
2.Есть TXT-файл который формирует сторонняя программа(примерное содержание файла):
Сайт почты http:\\mail.ru
Поисковик http:\\ya.ru
3.Необходимо чтобы php-код вставленный в страницу wordpress загружал данный файл на страницу и при этом ссылки были рабочими а не просто выводились как текст.
С самой загрузкой фала на страницу проблем нет, а вот ссылки как сделать?

GET
Гость_Roman
Ваши варианты?

_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Игорь_Vasinsky
700 рублей.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
twin
Цитата (Игорь_Vasinsky @ 27.09.2013 - 11:59)
700 рублей.

Я заплачу. Выкладывай вариант.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
kaww
Цитата (twin @ 27.09.2013 - 18:57)
Выкладывай вариант.

function auto_link_text($text) {
$pattern = '#\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))#';
return preg_replace_callback($pattern, 'auto_link_text_callback', $text);
}

function auto_link_text_callback($matches) {
$max_url_length = 50;
$max_depth_if_over_length = 2;
$ellipsis = '…';

$url_full = $matches[0];
$url_short = '';

if (strlen($url_full) > $max_url_length) {
$parts = parse_url($url_full);
$url_short = $parts['scheme'] . '://' . preg_replace('/^www\./', '', $parts['host']) . '/';

$path_components = explode('/', trim($parts['path'], '/'));
foreach ($path_components as $dir) {
$url_string_components[] = $dir . '/';
}

if (!empty($parts['query'])) {
$url_string_components[] = '?' . $parts['query'];
}

if (!empty($parts['fragment'])) {
$url_string_components[] = '#' . $parts['fragment'];
}

for ($k = 0; $k < count($url_string_components); $k++) {
$curr_component = $url_string_components[$k];
if ($k >= $max_depth_if_over_length || strlen($url_short) + strlen($curr_component) > $max_url_length) {
if ($k == 0 && strlen($url_short) < $max_url_length) {
// Always show a portion of first directory
$url_short .= substr($curr_component, 0, $max_url_length - strlen($url_short));
}
$url_short .= $ellipsis;
break;
}
$url_short .= $curr_component;
}

}
else {
$url_short = $url_full;
}

return "<a rel=\"nofollow\" href=\"$url_full\">$url_short</a>";
}

echo auto_link_text("Сайт почты http://mail.ru
Поисковик http://ya.ru "
);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.