Jakob Schneider: eregi_replace funktioniert nicht...

Beitrag lesen

Hi Leute,

Mein folgendes Script hier wandelt alle URL, bzw. Email-Angaben zwischen den Variablen "linkanfang ([link])" und "linkende([/link])"
um. Die Anfänge und Enden werden zuerst ausgelesen, dann der zwischenstehende String mit Rexeps auf die Syntax überprüft. Stimmt die Syntax, wird in einer Variable ($urlbegin[$i]) der Linkcode (z.B. <a href="http://www.oppa.de">http//www.oppa.de</a>) gespeichert.
Jetzt will ich im Beitrag ($beitrag) den ursprünglichen Text (z.B. http://www.patty.de) durch $urlbegin[$i] ersetzen, was ich mit eregi_replace vollbringen wollte ($beitrag=eregi_replace($url,$urlbegin[$i],$beitrag);).
Jedoch wird nicht ersetzt. Setze ich statt $url '[link]' ein, wird '[link]' jedoch ersetzt.
Warum wird nicht auch der komplette String (z.B. [link]http://www.patty.de[/link]) durch den Linkstring ersetzt?

Hier der gesamte Code:

include('inc.php');
$beitrag='cvbvcbcvbcvb [link]http://www.patty.de[/link] jdfhj[link]dhkf[/link]dkf [link]oppa@web.de[/link][link]http://www.oppa.de[/link] dfgdfgfd';
$urlbegin=explode($linkanfang,$beitrag);

$urlend=explode($linkende,$beitrag);

for ($i=0;$i<=count($urlbegin)-1;$i++)
{
$endposition=strpos($urlbegin[$i],$linkende);
if($endposition)
{
$urlbegin[$i]=substr($urlbegin[$i],0,$endposition);
}

if(preg_match(URL,$urlbegin[$i])==true)
{
$url=$urlbegin[$i];
$urlbegin[$i]='<a href="'.$urlbegin[$i].'">'.$urlbegin[$i].'</a>';
$beitrag=eregi_replace($url,$urlbegin[$i],$beitrag);

}
if(preg_match(EMAIL,$urlbegin[$i])==true)
{
$url=$urlbegin[$i];
$urlbegin[$i]='<a href="mailto:'.$urlbegin[$i].'">'.$urlbegin[$i].'</a>';
$beitrag=eregi_replace($url,$urlbegin[$i],$beitrag);
}

}

print $beitrag;

Ich hoffe, dass ich  mich verständlich ausgedrückt habe und danke euch schonmal..
MfG Jakob

PS: Bei ereg_replace tritt das selbe Problem auf...