Heim >Backend-Entwicklung >PHP-Tutorial >Wie verknüpfe ich URLs in einem String mit PHP?
URLs in einem String mit PHP verknüpfen
Beim Umgang mit Strings, die URLs enthalten, ist es oft wünschenswert, diese URLs in anklickbare Hyperlinks umzuwandeln . Dies kann durch die umfangreichen String-Manipulationsfunktionen von PHP erreicht werden.
Betrachten Sie die folgende Zeichenfolge:
"Look on http://www.google.com".
Das Ziel besteht darin, diese Zeichenfolge umzuwandeln in:
"Look on <a href="http://www.google.com">http://www.google.com</a>"
Lösung
PHP bietet verschiedene Methoden zum Suchen und Ersetzen von Mustern innerhalb von Zeichenfolgen. Um URLs in einer Zeichenfolge zu verknüpfen, können wir den folgenden Code verwenden:
<code class="php">$string = "Look on http://www.google.com"; $string = preg_replace( "~[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]~", "<a href=\"\0\">\0</a>", $string );</code>
Dieser Code verwendet reguläre Ausdrücke, um gültige URLs innerhalb der Zeichenfolge zu identifizieren. Das Muster ~[[:alpha:]] ://[^<>[:space:]] [[:alnum:]/]~ sucht nach Zeichenfolgen, die mit dem Protokoll „http“ beginnen, gefolgt von einer Domäne Name oder IP-Adresse und endet mit einem Schrägstrich oder einem anderen alphanumerischen Zeichen.
Sobald eine URL gefunden wurde, wird sie durch eine Zeichenfolge ersetzt, die ein HTML-Ankertag () mit der URL als URL enthält href-Attribut. Die \0-Sequenz wird als Platzhalter für die übereinstimmende URL verwendet.
Kompatibilitätshinweis
Der bereitgestellte Code unterstützt PHP-Versionen 5.3 und höher. Ersetzen Sie für Versionen unter 5.3 preg_replace durch ereg_replace.
Das obige ist der detaillierte Inhalt vonWie verknüpfe ich URLs in einem String mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!