PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Url in Link umwandeln (https://www.php-resource.de/forum/php-developer-forum/99321-url-in-link-umwandeln.html)

Ackergaul 19-04-2010 12:02

Url in Link umwandeln
 
Hey Leute,

ich benutze preg_replace um eine URL direkt in einen Link umzuwandeln:

/*** make sure there is an http:// on all URLs ***/
$string = preg_replace("/([^\w\/])(www\.[a-z0-9\-]+\.[a-z0-9\-]+)/i", "$1http://$2",$string);
/*** make all URLs links ***/
$string = preg_replace("/([\w]+:\/\/[\w-?&;#~=\.\/\@]+[\w\/])/i","<a target=\"_blank\" href=\"$1\">$1</A>",$string);

Leider wandelt es
http://www.example.com/profile.php?ref=profile&id=10000 in
http://www.example.com/profile.php?ref=profile um,
es "schneidet" den &10000 Teil also ab. Was muss ich ändern, um diesen Teil beizubehalten?

Vielen Dank!

AmicaNoctis 19-04-2010 16:10

Hallo,

bitte passe dein Posting an und benutze die PHP-Code-Tags.

Dein Problem ist mit dem gegebenen Beispiel nicht nachvollziehbar, denn &id=10000 wird von deinem Code nicht abgeschnitten.

Ansonsten gibt es ja noch sowas. Dort kannst du mal damit herumprobieren:
Code:

<([a-z]+:(?://)?)
([a-z\x80-\xff][a-z0-9\x80-\xff-]*[a-z0-9\x80-\xff](?:\.[a-z\x80-\xff][a-z0-9\x80-\xff-]*[a-z0-9\x80-\xff])*)
((?:/[^\s/?&#]+)*)
(\?[^\s#]+)?
(#\S*)?>i

(Umbrüche entfernen.)

Gruß,

Amica


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:21 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG