[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Фун-я выделения ссылок для чата?
Stasonix
<?php 

echo "THIS FUNCTION MUST MAKE A LINKS";

function autolink($text)
{
$search = array("'[\w\+]+://[A-z0-9\.\?\+\-/_=&%#:;]+[\w/=]+'si","'([^/])(www\.[A-z0-9\.\?\+\-/_=&%#:;]+[\w/=]+)'si","'[\w]+[\w\-\.]+@[\w\-\.]+\.[\w]+'si");
$replace = array('<a href="$0" target="_blank" rel="nofollow">$0</a>','$1<a href="http://$2" target="_blank" rel="nofollow">$2</a>','<a href="mailto:$0" rel="nofollow">$0</a>');
return preg_replace($search, $replace, $text);
}

$zlink="www.google.com";

echo "<br>".autolink($zlink);

?>




Спустя 10 минут (8.02.2011 - 18:21) Snus написал(а):
<?php
$text = 'Вот сайт гугла - http://www.google.ru Как вам?';
$text = ereg_replace('[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]', '<a href="\\0">\\0</a>', $text);
echo $text;
?>

Спустя 5 минут, 29 секунд (8.02.2011 - 18:26) Stasonix написал(а):
Цитата (Snus @ 8.02.2011 - 15:21)
<?php
$text = 'Вот сайт гугла - http://www.google.ru Как вам?';
$text = ereg_replace('[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]', '<a href="\\0">\\0</a>', $text);
echo $text;
?>

вот что выдало:
Deprecated: Function ereg_replace() is deprecated in Z:\home\linkcheck.ua\www\index.php on line 17

Вот сайт гугла - http://www.google.ru Как вам?

17-ая строка естественно это твоя регулярка, и хттп у меня и так выделяется, а вот без хттп не хочет, вот так ввв.гугл.ком не получается?

Спустя 2 минуты, 59 секунд (8.02.2011 - 18:29) Snus написал(а):
Stasonix
В новых версиях пхп ее убрали sad.gif

Спустя 2 часа, 2 минуты, 25 секунд (8.02.2011 - 20:32) Dron19 написал(а):
preg_replace поможет

Спустя 8 минут, 23 секунды (8.02.2011 - 20:40) Stasonix написал(а):
Цитата (Dron19 @ 8.02.2011 - 17:32)
preg_replace поможет

как именно?

Спустя 11 минут, 51 секунда (8.02.2011 - 20:52) Dron19 написал(а):
Вот так

$text = 'Вот сайт гугла - http://www.google.ru Как вам?';
$text = preg_replace("/.*?(http:\/\/.*\.[a-z]{2,5}?).*/i","\\1",$text);
echo $text . "<br>"; // http://www.google.ru

Работает если в переменной текст только одна ссылка и если она начинается с http://
С тебя плюс =)

Спустя 3 минуты, 28 секунд (8.02.2011 - 20:56) Dron19 написал(а):
если помогло конечно, а если не помогло или не совсем то, что нужно, то не ставь плюс. Но я хотел помочь...

Спустя 2 минуты, 46 секунд (8.02.2011 - 20:58) Stasonix написал(а):
Цитата (Dron19 @ 8.02.2011 - 17:56)
если помогло конечно, а если не помогло или не совсем то, что нужно, то не ставь плюс. Но я хотел помочь...

Цитата (Dron19 @ 8.02.2011 - 17:52)

Работает если в переменной текст только одна ссылка и если она начинается с http://
С тебя плюс =)

С меня минус, у меня фун-я и так выделяет все что с http://, а мне надо чтоб оно выделяло и такое www.google.com, и самое главное! Если прописать вот так:
$string = 'Пример: www.gorodvomne.ru http://gorodvomne.ru name@mail.ru';
print autolink($string);
т.е. возможно проблема в кавычках, но я не знаю как ее решить.

Спустя 13 секунд (8.02.2011 - 20:59) Dron19 написал(а):
что бы и просто www вытаскивало
/.*?(http:\/\/.*\.[a-z]{2,5}?).*/i
перепиши на
/.*?((http:\/\/|www).*\.[a-z]{2,5}?).*/i
и заработает

Спустя 5 минут, 38 секунд (8.02.2011 - 21:04) Dron19 написал(а):
Цитата (Stasonix @ 8.02.2011 - 17:58)
Цитата (Dron19 @ 8.02.2011 - 17:56)
если помогло конечно, а если не помогло или не совсем то, что нужно, то не ставь плюс. Но я хотел помочь...

Цитата (Dron19 @ 8.02.2011 - 17:52)

Работает если в переменной текст только одна ссылка и если она начинается с http://
С тебя плюс =)

С меня минус, у меня фун-я и так выделяет все что с http://, а мне надо чтоб оно выделяло и такое www.google.com, и самое главное! Если прописать вот так:
$string = 'Пример: www.gorodvomne.ru http://gorodvomne.ru name@mail.ru';
print autolink($string);
т.е. возможно проблема в кавычках, но я не знаю как ее решить.

я те тут пытаюсь помочь, а ты минус? Ну делай тогда сам.

Спустя 4 минуты, 33 секунды (8.02.2011 - 21:09) Stasonix написал(а):
Цитата (Dron19 @ 8.02.2011 - 18:04)

я те тут пытаюсь помочь, а ты минус? Ну делай тогда сам.

я только зарегился, незнаю к чему эти все плюсы и минусы, просто хотел сказать что фун-ия с хттп и так работает, да и вообще если так ввести:
$string = 'Пример: www.gorodvomne.ru http://gorodvomne.ru name@mail.ru';
print autolink($string);
то все выделяется, возможно причина в кавычках.

Спустя 9 минут, 14 секунд (8.02.2011 - 21:18) Stasonix написал(а):
идиотизм, но в таком виде:
$string = 'Пример: www.gorodvomne.ru http://gorodvomne.ru name@mail.ru';
print autolink($string);

оно выделяется потому-что после слова Пример стоит двоеточие ":"., если его убрать, то оно ничего не выделит.
Быстрый ответ:

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