<?php

function replace_callback($m){
	if (empty($m[3])) { // email
		return "<a href='mailto:".$m[0]."'>" . $m[0] . "</a>";
	}
	else { // url
		return "<a href='".$m[1]."://".$m[3]."' target='_blank' title='".$m[0]."'>".$m[0]."</a>";
	}
}
	
function linkifyMyString($noteText) {
	$emailPattern = '\S+@\S+\.\S+';
	$urlPattern = '(https?)?(://)?([a-zA-Z](?:[-\w]+\.)+(?:[^\s.]+\S*)+[^,.\s])';
	return preg_replace_callback('~' . $emailPattern . '|' . $urlPattern . '~', 'replace_callback', $noteText);
}
$str = "www.google.com contact me at test.me@gmail.com visit us http://google.com ,http://g...content-available-to-author-only...l.com";
echo linkifyMyString($str);