Гость_Roman
27.09.2013 - 11:10
Добрый день! PHP вообще не знаю, поэтому прошу Вашей помощи.
Задача следующая:
1.Есть сайт на wordpress.
2.Есть TXT-файл который формирует сторонняя программа(примерное содержание файла):
Сайт почты http:\\mail.ru
Поисковик http:\\ya.ru
3.Необходимо чтобы php-код вставленный в страницу wordpress загружал данный файл на страницу и при этом ссылки были рабочими а не просто выводились как текст.
С самой загрузкой фала на страницу проблем нет, а вот ссылки как сделать?
Гость_Roman
Ваши варианты?
_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Игорь_Vasinsky
27.09.2013 - 15:59
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
Цитата (Игорь_Vasinsky @ 27.09.2013 - 11:59) |
700 рублей. |
Я заплачу. Выкладывай вариант.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
Цитата (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) {
$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 ");