Noobis.de - Wir helfen weiter !


Banner Picture
PHP String nach Links durchsuchen und highlighten PDF Drucken E-Mail
Benutzerbewertung: / 2
SchwachPerfekt 
Tutorial Übersicht - Developer Tutorials
Samstag, 05. Juni 2010 um 18:36
Ein jeder Homepage oder Forum Programmierer stand schon vor diesem Problem:

Wie kann ich einen String nach einer URL oder WEBSEITE durchsuchen und als solches bei der Ausgabe wieder anzeigen.

Heute zeige ich eine schöne Funktion hierfür auf!

1. Was ist eine Funktion? Wie rufe ich diese auf? 

Dieser Tip richtet sich an erfahrene PHP Programmierer.

Wir gehen dabei davon aus, dass man in der Lage ist, eine Function mit entsprechenden
Übergabewerten zu implementieren und gerechterweise auch in der Lage ist eine solche zu interpretieren.

2. Die Funktion 

  hier nun der Quelltext hierfür:

<?PHP

function ReplaceLinks($text)
{
  
$urlsearch[] = "/([^]_a-z0-9-=\"'\/])((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
  
$urlsearch[] = "/^((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
  
$urlreplace[]= "\\1[URL]\\2\\4[/URL]";
  
$urlreplace[]= "[URL]\\1\\3[/URL]";
  
$text preg_replace($urlsearch$urlreplace$text);
  
$text preg_replace("/\[URL\](.*?)\[\/URL\]/si"      "<a href=\"\\1\" alt=\"\" target=\"blank\" style=\"text-decoration:none\">\\1</a>"$text);
  
$text preg_replace("/\[URL=(.*?)\](.*?)\[\/URL\]/si""<a href=\"\\1\" alt=\"\" target=\"blank\" style=\"text-decoration:none\">\\2</a>"$text);
  
  
$text=str_replace("href=\"www","href=\"http://www",$text);
  
  return(
$text);
}

?>

3. Der Aufruf der Funktion

Wir gehen hierbei davon aus, dass dieser Code nicht in einer Klasse vorkommt.
Ansonsten wäre dies über $this zu realisieren.

ReplaceLinks($givenstring);


Aktualisiert ( Samstag, 05. Juni 2010 um 18:50 )
 

Comments

B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Working....
Finished
Failed