Portal > Foren > PHP > PHP-Programmierung > Problem mit preg_replace_callback()
Antwort
 
Themen-Optionen
Alt 27.03.2007, 15:40 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 10.03.2007
Beiträge: 5
Standard Problem mit preg_replace_callback()

Hallo,

ich sitzt jetzt schon eine ganze Weile an diesem Script:

PHP-Code:
<?

class sys_bbcodes {

    public $str;


    function linkLenght($treffer)
    {

       $url = trim($treffer[1]);

       if(strlen(trim($treffer[2]))!=0)
       $linkname = $treffer[2];
       else
       $linkname = $treffer[1];

       if(strlen($linkname)>50 AND !substr_count(strtolower($linkname), '[img]') AND !substr_count(strtolower($linkname), '[/img]'))
       $linkname = substr($linkname, 0, 45-3)."...".substr($linkname, -5);

       $ergebnis = "<a href=\"".$url."\" target=\"_blank\">".$linkname."</a>";
       return $ergebnis;
    }
    
    function __construct($text)
    {
       $text = preg_replace("/\[b\](.*)\[\/b\]/Usi", "<b>\\1</b>", $text);  /* [b]Text[/b] */
       $text = preg_replace("/\[i\](.*)\[\/i\]/Usi", "<i>\\1</i>", $text);  /* [i]Text[/i] */
       $text = preg_replace("/\[u\](.*)\[\/u\]/Usi", "<u>\\1</u>", $text);  /* [u]Text[/u] */
       $text = preg_replace("/\[color=(.*)\](.*)\[\/color\]/Usi", "<font color=\"\\1\">\\2</font>", $text);  /* [color=grey]Text[/color] */
       $text = preg_replace("/\[email=(.*)\](.*)\[\/email\]/Usi", "<a href=\"mailto:\\1\">\\2</a>", $text);  /* [email]Text[/email] */

33-       $text = preg_replace_callback("/\[url=(.*)\](.*)\[\/url\]/Usi", '$this->linkLenght', $text);
34-       $text = preg_replace_callback('#(( |^)(((ftp|http|https|:(//)|www.)\S+)#mi', '$this->linkLenght', $text);
 
       $this->str = $text;
    }



}

$class = new sys_bbcodes("[url=http://www.google.de]Link[/url]");
print $class->str;



?>
Wenn ich das Script ausrufe, bekomme ich folgende Fehlermeldung:

Zitat:
Warning: preg_replace_callback() [function.preg-replace-callback]: requires argument 2, '', to be a valid callback in E:\Programme\xampp\htdocs\_new\sys_bbcode.php on line 33

Warning: preg_replace_callback() [function.preg-replace-callback]: requires argument 2, '', to be a valid callback in E:\Programme\xampp\htdocs\_new\sys_bbcode.php on line 34
Link
Ich hoffe mir kann jemand helfen!

Gruß,
Timo
cracki ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 27.03.2007, 16:02 Nach oben    #2
leftover when bar closes
 
Benutzerbild von dsxs
 
Registriert seit: 29.06.2006
Ort: Bern
Beiträge: 123
Standard

Hey Timo

Die Fehlermeldung zeigt Dir doch den Fehler schon auf - unvollständige/falsche Parameter beim Aufruf der Funktion preg_replace_callback.

Die Methode linkLength scheint einen leeren String zurückzugeben, was dann den Fehler auslöst -> kein Argument angegeben.
__________________
Unkraut ist die Opposition der Natur gegen die Regierung der Gärtner.
ticketbörse

dsxs ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 27.03.2007, 16:04 Nach oben    #3
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.180
Standard

-> http://www.php.net/manual/de/functio...back.php#34620
robo47 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 27.03.2007, 16:23 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 10.03.2007
Beiträge: 5
Standard

Vielen Dank, hat geklappt.
cracki ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem E-Mails zu senden Jann Hendrik Plauderecke 7 25.05.2007 21:37
Logisches Problem beim einsatz von Ereignissen Prophet Allgemeine Java-Programmierung 19 05.06.2006 22:08
Problem mit Cookie und Reloads... Bookworm PHP-Programmierung 10 13.04.2006 12:09
OSX + Eclipse 3.1 Problem bacarni Eclipse 3 29.07.2005 21:19
kleines problem mit events und buttons lost-prophet Allgemeine Java-Programmierung 3 01.06.2005 09:36


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:37 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44