UTF-8 fixes
[platal.git] / include / url_catcher.inc.php
CommitLineData
6146ec8e 1<?php
2
a7de4ef7 3// renvoie un texte html à partir d'un texte classique
4// en remplacant les url par des liens (éventuellement les mails)
6146ec8e 5function url_catcher($texte, $mails = true) {
21a41057 6 $patterns = array();
7 $replacement = array();
8
9 // url commencant par http, https ou ftp
a7de4ef7 10 $patterns[] = '/((?:https?|ftp):\/\/(?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/i';
21a41057 11 $replacement[] = '<a href="\\0">\\0</a>';
12
13 // url commencant par www.
a7de4ef7 14 $patterns[] = '/(\s|^)www\.((?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/i';
21a41057 15 $replacement[] = '\\1<a href="http://www.\\2">www.\\2</a>';
16
17 if ($mails) {
6146ec8e 18 $patterns[] = '/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i';
19 $replacement[] = '<a href="mailto:\\0">\\0</a>';
21a41057 20 }
21
6146ec8e 22 return preg_replace($patterns, $replacement, $texte);
23}
a7de4ef7 24// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
6146ec8e 25?>