<style>
<!--
#org {
border-width: 1px;
border-color: #808080;
border-style: dotted;
background-color: #efefef;
padding: 10px;
margin-bottom: 40px;
}
#after {
border-width: 1px;
border-color: #808080;
border-style: dashed;
background-color: #efefef;
padding: 10px;
margin-bottom: 40px;
}
-->
</style>
<form method="post" action="<?=$PHP_SELF?>">
<textarea name='text' cols='40' rows='10'><?=$_POST[text]?></textarea>
<input type=submit>
</form>
<br><br><br>
<?PHP
function link_url( $var ){
$t = parse_url( $var );
$url = "{$t[scheme]}://";
if( $t[user] ){
$url .= $t[user];
if( $t[pass] )
$url .= ":{$t[pass]}";
$url .= "@";
}
$url .= "{$t[host]}";
$ret = "<a href='{$url}/'>$url</a>";
$full_url = "";
if( $t[path] ){
$full_url .= $t[path];
if( $t[query] ){
$full_url .= "?{$t[query]}";
}
if( $t[fragment] ){
$full_url .= "#{$t[fragment]}";
}
$ret .= "<a href='{$url}{$full_url}'>{$full_url}</a>";
}
return $ret;
}
function autolink( $var ){
$var = " {$var}";
$pattern = "/[[:space:]]+(http|ftp|mms):\/\/([^[:space:]]+)/e";
$var = preg_replace( $pattern, "link_url( '\\1://\\2' )", $var );
return $var;
}
if( $_POST[text] ){
$text = autolink( $_POST[text] );
echo "<div id='org'>\n";
echo "<H3>Original is</H3>";
echo str_replace( "\n", "<br>\n", $_POST[text] );
echo "</div>\n";
echo "<div id='after'>\n";
echo "<H3>After autolink...</H3>\n";
echo str_replace( "\n", "<br>\n", $text );
echo "</div>\n";
}
show_source(__FILE__);
?>