Cette fonction php prend comme paramètre une chaîne
de caractères et transforme les sous-chaînes "http://*",
"http://www.*" et "nom@exemple.com" en liens
cliquables.
<?
function text_to_links ($data) {
if(empty($data)) {
return $data;
}
$lines = explode("\n",
$data);
while (list ($key, $line)
= each ($lines)) {
$line = eregi_replace("([
\t]|^)www\.", " http://www.", $line);
$line = eregi_replace("([ \t]|^)ftp\.", " ftp://ftp.",
$line);
$line = eregi_replace("(http://[^ )\r\n]+)", "<a
href=\"\\1\" target=\"_blank\">\\1</a>",
$line);
$line = eregi_replace("(https://[^ )\r\n]+)", "<a
href=\"\\1\" target=\"_blank\">\\1</a>",
$line);
$line = eregi_replace("(ftp://[^ )\r\n]+)", "<a
href=\"\\1\" target=\"_blank\">\\1</a>",
$line);
$line = eregi_replace("([-a-z0-9_]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)+))",
"<a href=\"mailto:\\1\">\\1</a>",
$line);
if (empty($newText))
$newText = $line;
else
$newText .= "\n$line";
}
return $newText;
}
?>
|