Jump to content
powie.de Tech Forum
Sign in to follow this  
derboehm

bbcode

Recommended Posts

	while(preg_match('#\[url\](.*?)\[/url]#si', $text, $matches)) {
	$t1 = (string) $matches[1];
	if (strlen($t1) > 58) {
		$t2 = substr($t1, 0, 40)."...".substr($t1, -15);
	}
	else {
		$t2 = $t1;
	}

	$text = preg_replace('#\[url\](.*?)\[/url]#si',''.$t2.'',$text);
}

 

leider ist, wenn man zwei urls einträgt eine verschluckt und es wird nur eine angezeigt... evtl. weiß ja einer von euch einen rat...

Share this post


Link to post
Share on other sites

fein, danke für den tipp

preg_match_all('#\[url\](.*?)\[/url]#si', $text, $matches);
for ($i=0; $i 58) {
   $t2 = substr($t1, 0, 40)."...".substr($t1, -15);
 }
 else {
   $t2 = $t1;
 }
 $text = preg_replace('#\[url\]'.$t1.'\[/url]#si',''.$t2.'',$text);
}

 

so bei allen links funktioniert es bis auf links wo ein '&' (kaufmännisches und) drin is da ich irgendwo vorher es umwandel zu '&' wie kann ich das rückgängig machen.. hab schon htmlspecialchars-decode ausprobiert... ging aber net :(

Share this post


Link to post
Share on other sites

hinbekommen

also wer den hack nutzen will, muss dann

 

'#\[url\](.*?)\[/url]#si',

und

'\1',

 

bei $search & $replace auskommentieren


und das unter die array einfügen :)

 

	preg_match_all('#\[url\](.*?)\[/url]#si', $text, $matches);
for ($i=0; $i 58) {
		$t2 = substr($t1, 0, 40)."...".substr($t1, -15);
	}
	else {
		$t2 = $t1;
	}
	$text = str_replace($matches[0][$i],''.$t2.'',$text);
}

Share this post


Link to post
Share on other sites

Das geht mit einem preg_replace() und einer selbstgeschriebenen Funktion auch ;-)

Ist vlt. effizienter da die Schleife dann wegfällt.

Share this post


Link to post
Share on other sites
Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×