|  | Posted by tom on 06/12/82 11:34 
FYI, by accident I just found a function that's pretty much what I waslooking for.
 
 It's from the GREAT PHP web browser simulation class 'Snoopy', which
 I've been using for ages now with great results:
 http://sourceforge.net/projects/snoopy/
 
 In case this thread is ever helpful to someone else, here's the
 function _expandlinks from Snoopy:
 
 /*======================================================================*\
 Function:	_expandlinks
 Purpose:	expand each link into a fully qualified URL
 Input:		$links			the links to qualify
 $URI			the full URI to get the base from
 Output:		$expandedLinks	the expanded links
 \*======================================================================*/
 
 function _expandlinks($links,$URI)
 {
 
 preg_match("/^[^\?]+/",$URI,$match);
 
 $match = preg_replace("|/[^\/\.]+\.[^\/\.]+$|","",$match[0]);
 $match = preg_replace("|/$|","",$match);
 $match_part = parse_url($match);
 $match_root =
 $match_part["scheme"]."://".$match_part["host"];
 
 $search = array( 	"|^http://".preg_quote($this->host)."|i",
 "|^(\/)|i",
 "|^(?!http://)(?!mailto:)|i",
 "|/\./|",
 "|/[^\/]+/\.\./|"
 );
 
 $replace = array(	"",
 $match_root."/",
 $match."/",
 "/",
 "/"
 );
 
 $expandedLinks = preg_replace($search,$replace,$links);
 
 return $expandedLinks;
 }
  Navigation: [Reply to this message] |